2011-03-30 149 views
0

我使用AJAX在我的頁面「項目」動態添加/刪除項目。 但是,當我要進入下一頁,然後返回到我的「項目」中時,會顯示此集合 ,因爲它是在更改之前顯示的。與動態添加項目的Div

F5-Refresh之後有效。

如何避免它? 所有的都是合適的保存,但它看起來像緩存或如此。

代碼示例:

<script> 

    delete_item_from_list = function (itemIdGiven, listIdGiven) { 
     $.ajax({ 
      url: "@{Lists.deleteByIndexItem()}", 
      method: 'post', 
      async: true, 
        dataType: 'html', 
      data: { 
       itemId : itemIdGiven, 
       listId : listIdGiven 
      }, 
      success: function(data) { 
       $(".items").html(data); 
      }, 
      error: function() { 
       console.log ("It's a TRAP!"); 
      } 

     }); 
    }; 

</script> 
+0

請提供更多詳細信息和您使用的代碼。 – Alp 2011-03-30 09:38:05

+1

什麼是「AJAH」? – 2011-03-30 09:38:59

+0

在刪除/添加的代碼中,我發送更改請求到收集並作爲響應將所有收集作爲html。 AJAX - >作爲迴應你有XML ** AJAH ** - >作爲迴應,你有Html – sdf 2011-03-30 09:40:00

回答

0

這是一個問題,甚至還可以直接在StackOverflow的網站上:

剛剛嘗試添加註釋作爲第幾的人,然後你會看到註釋添加,如果你點擊你的名字查看你的個人資料,然後點擊「返回」,你將看不到你添加的評論。

處理此問題的一種方法是添加AJAX歷史記錄和書籤,這樣,當AJAX成功時,URL實際上已更改並且可收藏(和歷史記錄)。當你點擊一個新的頁面,然後點擊「返回」,該網址就會變成舊的,並且AJAX書籤和歷史記錄的機制應該會爲你填充你的內容。

+0

*這樣,當AJAX成功時,URL實際上已經改變了* 看起來非常有趣,就像在成功後向當前URL添加一些參數一樣? – sdf 2011-03-30 09:57:51

+0

@sdf:是的,通常通過哈希來實現。看到[這裏](http://stackoverflow.com/questions/3849758/how-does-facebook-rewrite-the-source-url-of-a-page-in-the-browser-address-bar)的一些建議關於如何去做。 – 2011-03-30 10:34:27

+0

thx!用這個插件完成 http://ti.y1.ru/jquery/router/ – sdf 2011-03-30 13:25:18