0

最新の jquery モバイル (" http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js ) および jquery ( http://code.jquery.com/jquery-1.9 ) を使用する.1.min.js ) であり、私の pagecreate イベントはほとんどの場合機能しますが、[戻る] ボタンをクリックしてページを更新しようとすると、何も表示されません. FireBug を使用してリクエストが発生していることを確認できますが、できません。 json の結果がページに設定されていない理由がわかりません。

ありがとう!

$(document).on("pagecreate", "#checkout51", function(event, ui) {
thisPage = $(this);
loadPageContent("checkout51.html", function(data) {
    $(thisPage).prepend(data);
});
});

$(document).on("pageshow", "#checkout51", function(event, ui) {
    $.mobile.loadingMessage = "Please wait - loading coupons ...";
  var couponslist = $('#couponslist');
  $.mobile.showPageLoadingMsg();
  var url = "http://www.test.com/request.php?";
  $.getJSON(url, {
        limit: "100",
    coupon_source : "Checkout51"
    }, function (data) {
            var listContent = "";
            listContent += "<li data-role='list-divider'>Checkout51 Coupons</li>";
    $.each(data, function(index, value){
            listContent += "<li><h2><a class='ui-link-inherit' href='coupondetails.html?id=" + value.coupon_id + "'>" + value.name + "</a></h2></li>";
    });
    $('#couponslist').empty().append(listContent).listview('refresh');
   })
    .error(function() { alert("Error while request processing"); })
    .complete(function() { 
  $.mobile.hidePageLoadingMsg()
    });
});

これを HTML として使用する:

<div class="fixed-header" data-position="fixed" data-tap-toggle="false" data-role="header" data-theme="b">
    <a href="#" data-theme="b" class='ui-btn-left' data-icon='arrow-l'>Back</a>
    <h1>Checkout51 Coupons</h1>
    <a href="#" data-role="button" data-theme="b" data-icon="home" data-iconpos="notext"></a>
</div>
<div data-role="content" data-theme="c"><br /><ul id="couponslist" data-role="listview" role="listbox"></ul><br /></div>
<div data-role="footer" data-position="fixed" data-id="footer"><div data-role="navbar"><ul><li><a href="index.html" id="menu1" data-role="button" data-icon="home">Home</a></li>     <li><a href="search.html" id="menu2" data-role="button" data-icon="search">Search</a></li><li><a href="subscribe.html" id="menu3" data-role="button" data-icon="info">Subscribe</a></li></ul></div></div><!-- /footer -->

助けていただければ幸いです - これは Phonegap アプリケーション用ですが、ブラウザーを使用して一貫して動作することを確認する必要があります。

4

1 に答える 1

1

pagecreateページが最初に作成されるときに 1 回だけ起動します。ブラウザでページをロードするたびにイベントを発生させたい場合は、pageshow. ページをユーザーに表示する前に json リクエストをロードする場合は、 の使用を検討してくださいpagebeforeshow

JQM で利用できるさまざまな種類のイベントについては、こちら をご覧ください。

于 2013-03-31T06:52:52.877 に答える