1

こんにちは、私は初心者の Web 開発者で、個人的なプロジェクトとして単純な e コマース サイトのインターフェイスを構築しようとしています。このサイトには、チェックボックス付きの複数のページがあります

誰かが要素をチェックしたとき

  • 要素の価格を取得し、
  • 変数に格納します。

しかし、次のページに移動して新しいチェックボックス製品をクリックすると、変数は自動的に元の状態にリセットされます。

その変数の値を Javascript で保存するにはどうすればよいですか? jQueryライブラリを使用しています。

編集:これは、sessionStorage を使用して記述したコードですが、値がリセットされた次のページに移動しても機能しません。

ページを変更するたびにリセットしないように、このコードを作成するにはどうすればよいですか。私の Web サイトのすべてのページは同じスクリプトを使用しています。

$(document).ready(function(){
         var total = 0;



            $('input.check').click(function(){
                if($(this).attr('checked')){
                    var check = parseInt($(this).parent().children('span').text().substr(1 , 3));
                    total+=check;
                    sessionStorage.var_name=0 + total;
                    alert(sessionStorage.var_name);

                }else{
                    var uncheck = parseInt($(this).parent().children('span').text().substr(1 , 3));
                    total-=uncheck;


                }
            })
4

3 に答える 3

4

の構文sessionStorageは単純で、ブラウザ ウィンドウが閉じられるまでデータが保持されます。これは、他の JavaScript オブジェクトとまったく同じように機能します。ドット表記または角括弧表記 (スペースを含むキーに必要) を使用して、格納された値にアクセスできます。

を使用して値を保存するsessionStorage

sessionStorage['value key'] = 'value to store';

保存された値の使用

alert(sessionStorage['value key']);  // Alerts "value to store".
于 2012-06-02T15:38:56.510 に答える
2

これを達成するために localStorage を使用できます。localStorage を使用してフォールバックを設定する必要がありますが、次のように行うことができます。

ストレージからの読み取り:

if (localStorage['valueName'] !== undefined) {
    input.value = localStorage['valueName'];
}

ストレージへの書き込み:

localStorage['valueName'] = input.value;

jsfiddle の例を次に示します: http://jsfiddle.net/yJjLe/

于 2012-06-02T16:17:03.870 に答える
1

前述のように、sessionStorageまたはを使用できますlocalStorage。利用可能な別のオプションは、このプレゼンテーションHTML5 Web Databases を見てください。

また、html5 Web ストレージは安全ではないことに注意してください。保存されたデータは誰でもコンソールから簡単に見ることができます。

于 2012-06-02T16:34:57.523 に答える