Framework7 onPageInit не работает

У меня есть шаблон Framework7. Я хочу вызвать веб-сервис при загрузке страницы. Мой код внутри файла js:

myApp.onPageInit('cards', function (page){
    myApp.alert('Alert 1');
            $.ajax({
                type: "POST",
                url: "http://localhost:6032/Api.svc/GetTicket/",
                data: JSON.stringify({UnitType:1,UnitNr:1,PrinterTextNr:1,PrinterNr:0,Copies:1,Logo:0,Delay:0,Host:'pc-pc',Port:8899}),
                processData: true,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    //Get The Ticket
                    var ticket = data.data.TicketNumber;
                    document.getElementById('myticket').innerHTML = ticket;
                    //End Get The Ticket
                    document.getElementById('ticketBody').style.display = "block";
                    alert(1);
                },
                error: function (xhr) {
                    alert(xhr.responseText);
                }
            });    

}).trigger();

Но когда загрузка страницы ничего не делает. Когда я пробую свой скрипт в других html-файлах, он работает нормально. Вы можете помочь мне? Спасибо.


person Dimitris    schedule 27.01.2016    source источник


Ответы (3)


<!-- Views -->
  <div class="views">
    <!-- Your main view -->
    <div class="view view-main">
      <!-- Pages -->
      <div class="pages">
        <div class="page" data-page="cards">
          <div class="page-content">
            page content goes here
          </div>
        </div>
      </div>
    </div>

убедитесь, что ваша внешняя страница содержит это <div class="page" data-page="cards">

person Ganesh Lore    schedule 17.03.2016

Убедитесь, что вы инициализировали myApp, и проверьте, содержит ли ваша страница эту строку <div data-page="cards" class="page">, попробуйте что-то вроде mainView.router.loadContent(ticket);

person styl3r    schedule 28.01.2016

попробуй этот формат

  function Get_MySQL_Category() {
        $.ajax({
            type: "POST",
            url: "http://localhost:6032/Api.svc/GetTicket/",
            data: JSON.stringify({UnitType:1,UnitNr:1,PrinterTextNr:1,PrinterNr:0,Copies:1,Logo:0,Delay:0,Host:'pc-pc',Port:8899}),
            processData: true,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
                //Get The Ticket
                var ticket = data.data.TicketNumber;
                document.getElementById('myticket').innerHTML = ticket;
                //End Get The Ticket
                document.getElementById('ticketBody').style.display = "block";
                alert(1);
            },
            error: function (xhr) {
                alert(xhr.responseText);
            }
        }); 
    };

    myApp.onPageInit('cards', function (page) {
        Get_MySQL_Category()
    });
person To Be    schedule 15.07.2016