2012-04-17 6 views
0

クライアント側のデータをJava Scriptで保存/保持してアクセスする方法:Jquery?クライアント側のデータを保存/永続化してJavaScriptでデータにアクセスする方法:Jquery?

私はJqueryのjsTreeコンポーネントを使用しています:JavaScript。 「データ」

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

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

、ノードを選択した後、私が保存したいバインド()jstreeので

私はクッキーのデータオブジェクトを設定し、$(「#BTN」)で同じアクセスしようとしました。クリックします(関数(){... しかし、同じデータオブジェクトにアクセスすることはできません

+

私も()のバインドでjQuery.data()すなわち をしようとしたようなデータを設定する....

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

+0

おかげで、比較のために、それはサポートされていた知らなかった:ここではサンプルですIE 8で –

0

を使用することができ、localStorageがあります、sessionStorageおよびcookiesの解決策である。

これが機能していない場合は、何か問題があります。

データをの1ページに共有するには、data()をjQueryで使用することができます。しかし、この方法では、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) 
関連する問題