2011-09-16 68 views
2

我有以下問題:刷新在jQuery Mobile的dynamicaly創建的頁面

我使用jQuery移動,用戶可以搜索產品和那些頁面的細節是動態創建的:

類似:

$("body").append('<div class="products" data-role="page" id="'+pageId+'"><div data-role="header"><p class="backSearch"><a href="#base" data-rel="back" data-role="button" data-inline="true" data-icon="back">back</a></p><h1>' +data.title+ '</h1></div></div>'); 

// create the content DIV 
$('#'+pageId).append('<div data-role="content" id="content_'+pageId+'">...</div>'); 

它工作正常,但問題是,當你去產品的詳細信息,你點擊刷新表單再次出現,並且由於Dom刷新我沒有獲得產品的詳細信息了(需要做另一個搜索等。)

解決此問題的任何解決方案?

+0

我一直使用一個佔位符頁面,動態地添加數據,並刷新了 –

回答

2

要在本地保存這些詳細信息並在瀏覽器刷新後保持可用狀態,請嘗試使用store.js。這是一個跨瀏覽器的JavaScript庫,用於存儲局部變量:

https://github.com/marcuswestin/store.js

+0

頁感謝對答案的目標的內容,但我寧願只使用一個jQuery解決方案 – Tarek

+0

您將無法單獨使用jQuery存儲這些變量。您需要使用本地存儲。所以你最好的選擇是通過像store.js這樣的本地存儲或者對你的URL做一些聰明的事情。 – Spike

1

我使用的瀏覽器的localStorage存儲數據。當頁面刷新時,如果需要,我檢查變量中的數據並從localstorage中加載。

1

使用空()來清除

$('#'+pageId).empty().append('<div data-role="content" id="content_'+pageId+'">...</div>');