0

jquery mobile と jquery を使用してモバイル Web アプリを作成しています。これで、チェックボックスをオンにすると、変数がブラウザからローカル ストレージに保存されるようになりました。しかし、これらの変数は入力フィールドに戻されません。

これが私のスクリプトです。関数 validate() は、変数をローカル ストレージに保存します。

$(document).ready(function () {
        if (localStorage["mail"]) {
            $('#mail').val(localStorage["mail"]);
        }else{
            $('#mail').val("");
        }
        if (localStorage["password"]) {
            $('#password').val(localStorage["password"]);
        }else{
            $('#password').val("");
        }
});
function validate(){
    if ($("remember:checked")) {
         var mail= $("#mail").val();
         var password= $("#password").val();

         localStorage["mail"] = mail ;
         localStorage["password"] = password;
         localStorage.setItem("mail", mail) ;
         localStorage.setItem("password", password) ;

     }else{
       alert("You didn't check it! Let me check it for you.")
     }
}

誰でも私を助けることができますか?

ありがとうございました

4

2 に答える 2

0

有効なセレクターで$("remember:checked")はないようです (a.または a#がありません)。したがって、おそらくあなたの値はローカルストレージに保存されることはありません

要素の存在を確認するときは、length代わりにプロパティを使用する必要があります

if ($("<your selector>").length) {
   ...
}
于 2012-05-15T07:28:18.400 に答える
-1

ローカルストレージでアイテムを設定および取得するのは間違っています

localStorage.setItem('someval',1)
localStorage.getItem('someval'); // 1
于 2012-05-15T07:30:41.423 に答える