2012-04-17 198 views
0

如何在javaScript中保存/保存和訪問客戶端數據:jquery?如何在javaScript中保存/保存和訪問客戶端數據:jquery?

我正在使用JQuery的jsTree組件:JavaScript。

在綁定(jstree的),節點的選擇之後,我要救「數據」

.bind("select_node.jstree", function (event, data) { 
// where & how to save data ? 
} 

$("#Btn").click(function() { 
// I want to access data value on click event 
} 

我試圖設置數據對象的cookie,並訪問在$(「#BTN」)相同。點擊(函數(){... 但是不能訪問相同的數據對象

+

我還試圖jQuery.data(),即在 bind()的設定等數據....

jQuery.data(div, "selectedNode", data); 

,並試圖訪問$( 「#BTN」)。點擊(函數(){....像

var selectedNodeData = jQuery.data(div, "selectedNode"); // Can't access 

在這個問題上的任何幫助或指導,將不勝感激。

回答

1

您的解決方案是網絡存儲,這是HTML 5的時髦詞語的一部分,但它不是在舊的瀏覽器支持,您可以使用localstorage

+1

實際上,[localStorage的已經有一段時間了(http://caniuse.com/#search=localsto)已經 – Joseph 2012-04-17 09:20:38

+0

感謝的比較,不知道有人支持在IE 8上 – 2012-04-17 09:29:36

0

在多個頁面堅持DATAS ,還有localStoragesessionStoragecookies解決方案。

如果你沒有得到它的工作,那麼你有什麼問題。我建議您向我們顯示您用於您的Cookie的代碼:)

要在單個頁面上共享數據,您可以在jQuery中使用data()。但是這樣,您將數據附加到DOM元素,而不是無處不在。下面是一個示例:

$.data('#myId', 'selectedNode', '#nodeSelected') 
// There, I attach the "selectedNode" key with the "#nodeSelected" value 
// to the "#myId" element. 

// To retrieve the data later, you have to use: 
var el = $.data('#myId', 'selectedNode') 

// Then, you can use the value like this: 
$(el).on('click', fn) 
相關問題