JQUERY Mobile Динамические Страницы - PullRequest
0 голосов
/ 15 июля 2011

Я пытаюсь загрузить страницу динамически с помощью AJAX.Я передаю refid, который использую для получения содержимого страницы.

Вся информация хранится в пользовательском атрибуте в теге.

<a href="#dPage" title="More Info" data-theme="c" lat="{value}" lon="{value}" refid="{value}" id="detailslink">

<div data-role="page" id="dPage">
        <div data-role="header">
            <h1>Details</h1>
        </div>
        <div data-role="content">
            <div id="detailspage">

            </div>
        </div>

    </div>

//$('#dPage').bind('pageshow', function() {
$('#detailslink').live('click', function() {
    $("#detailspage").html('');
    var placelat = $(this).attr('lat'); 
var placelon = $(this).attr('lon');
var refid = $(this).attr('refid');
    //alert (refid);
    //$.mobile.pageLoading();
    //alert("Your browser broke!");
    $.ajax({  
       cache: false,
       url: "getdetails.php", 
       dataType: "html",
       data: "&lat="+placelat+"&lon="+placelon+"&refid="+refid,
       success: function (data) {   
        $("#detailspage").html(data);

        }
    });
    //alert("done");

});

НУЖНА ПОМОЩЬ: Это не работает на iPhone.Контент возвращается и отлично работает на ПК, Android, но не Iphone.На iphone ничего не загружается, только пустая страница.Есть идеи, как починить iPhone?

Мне удалось заставить его правильно загрузить содержимое первой страницы, но он загружает эту страницу.Все остальные страницы просто показывают ту же страницу.Контент не обновляется.

1 Ответ

0 голосов
/ 15 июля 2011

Возможно, вы захотите попробовать реализовать обработку ошибок для вызова jquery.ajax.Взгляните на http://api.jquery.com/jQuery.ajax,, в частности на ошибку и настройки statusCode, чтобы узнать, сможете ли вы лучше понять, что происходит.Возможно, что-то вроде следующего:

$.ajax({  
   cache: false,
   url: "getdetails.php", 
   dataType: "html",
   data: "&lat="+placelat+"&lon="+placelon+"&refid="+refid,
   success: function (data) {   
    $("#detailspage").html(data);
    },
   error: function(jqXHR, textStatus, errorThrown) {
       alert(textStatus);
   }
});

Если вышеприведенное не поможет, вы также можете попробовать воспроизвести ошибку в Safari на настольном компьютере / ноутбуке.Safari имеет довольно хороший JavaScript-отладчик, который может помочь вам увидеть, что происходит, и даже может позволить вам просмотреть ваш код info .

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...