3

一時変数にいくつかの要素を保存する必要があるため、そのページに戻ったときにページの読み込み時にそれらを表示できます

私は約持っていますが、8 li element私はクリックしましょう、それで私はどこかにID5 liを保存したいです5 li

$("#divPopup").on("click", "li", function () {
            ...
                var newId = $this.attr('Id').replace("Left", "Right")

                // here i want to store newID, each time user click on event, it should be unique values  , i want to store in $('#hdnValueProjectBtn').val(newId);
            }
            else {
                var newId = $this.attr('Id').replace("Left", "Right")
                $('#' + newId).hide();
            }
        });
4

3 に答える 3

1

サポートされているブラウザで使用し、古いlocalStorageブラウザでフォールバックできます。例を次に示します。Cookies

// store value
if (window.localStorage !== undefined) {
    window.localStorage.setItem("li_id", id);
} else {
    // WARNING: the following will overwrite current document cookie.
    document.cookie = ["li_id", "=", id, "; domain=.", window.location.host, "; path=" + window.location.pathname + ";"].join("");

}

// get value
var savedValue;
if (window.localStorage !== undefined) {
    savedValue = window.localStorage.getItem("li_id");
} else {
    savedValue = document.cookie.split(";")[0].split("=")[1];
}

alert(savedValue);

id上記のスニペットでは、保存する値であることに注意してください。

于 2013-03-05T18:17:00.473 に答える
0

データを使用してjQueryのDOMノードにデータを保存すると、変数はノードオブジェクトに保存されます。これは、属性としてノード要素にデータを格納すると文字列値のみが格納されるため、複雑なオブジェクトと参照に対応するためです。

$('#foo').data('foo', 'baz');

console.log( $('#foo').attr('data-foo') );
//outputs "bar" as the attribute was never changed

console.log( $('#foo').data('foo') );
//outputs "baz" as the value has been updated on the object
于 2013-03-05T18:22:25.187 に答える
0

ジムジミーの言うことは正しい。サーバーサイドスクリプトを使用していますか?

  • クライアント側スクリプトのみを使用している場合、タスクを達成できる唯一の方法は 1) Cookies 2) LocalStorage 3) SessionStorage - そのセッションのみ
于 2013-03-05T18:17:23.750 に答える