2013-02-22 168 views
0

我正與一個移動應用程序,其中 第一頁有jQuery Mobile的頁面波動

HTML工作

<ul> 
    <li>121212</li> 
    <li>123233</li> 
    <li>232323</li> 
    <li>4323423</li> 
    <ul> 

當 「禮」 的用戶點擊,那麼他/她進入了下一頁,該頁面將通過Ajax檢索與選定「li」相關的數據。 這幾乎是好的..

但是當Ajax響應來頁面波動2倍。 意味着一次頁面加載,下次頁面全白,然後再次顯示Ajax響應頁面。 爲什麼?

Ĵ查詢

$("clickOnLi").click(function(){ 
     var id= $(this).val(); //get the selected li value 
     $('.loadingGif').css({ 'display':'block' }); 
     $("#ulShowContent").html(''); // to remove old inner HTML to show new result html 
     var dataString = 'selectedid='+id; 
     $.ajax({ 
      type: "POST", 
      url: remoteUrl+"handler.php", 
      data : dataString, 
      cache: true, 
      success: function(response) { 
       if(response){ 
        $('.loadingGif').css({ 'display':'none' }); 
        $("#ulShowContent").html(response); 
       } 
       } 
     }); 
    }) 



**and the result will show in this html** 


<ul id="ulShowContent" data-role="listview"> 
    <li class="comment chatsend"> 
     <div class="comment-meta"> 
      data 1 
     </div> 
    </li> 

    <li class="comment chatsend"> 
     <div class="comment-meta"> 
      data 2 
     </div> 
    </li> 
</ul> 
+0

很少的問題。在換頁之前或之後,你會做一個ajax調用嗎? – Gajotres 2013-02-22 08:55:05

回答

1

你需要改變你如何處理換頁和AJAX調用

我有什麼從你的問題了解,請點擊LI元素後,頁面的變化進行初始化和AJAX呼叫發送到PHP服務器。

您將需要更改此邏輯。頁面起伏是由於在從一個頁面到另一個頁面的過渡期間執行的調用導致的AJAX

這個問題可以這樣:

  • 在第一頁從列表元素
  • 刪除HREF屬性的單擊事件添加到每個列表元素
  • AJAX呼叫應點擊事件執行,同時顯示您的自定義加載器(或使用默認的加載器)
  • 當服務器端數據被檢索d您需要存儲它,以便可以從另一個頁面訪問它。在這裏,你會發現我的其他ANSWER在這裏你可以找到在頁面轉換存儲數據的各種方法,或發現它HERE,只是尋找一個叫章:數據/參數頁面過渡之間操縱(你最好的選擇是a localstorage)。
  • 初始化changePage功能
  • 頁面改變在一個pagebeforeshow事件(尚未顯示的頁面)的新數據添加到新的容器
  • 當第二頁最後表示一切將在那裏和
+0

好吧,先生,我會嘗試你的建議..並會給你+1如果這個問題將解決...這個建議似乎太好了。 – 2013-02-22 09:46:47

+0

如果你想/需要我會給你一個基本的工作演示,我曾經幫助別人。 – Gajotres 2013-02-22 10:04:32

+0

是的,先生..這將幫助我..謝謝你.thanx很多.. – 2013-02-22 10:19:12