私はLocalStorageを使用してiOS用のPhoneGapで構築しているアプリケーションにユーザー名とパスワードを保存しています。 iPadでアプリを実行したときに、ユーザー名とパスワードを入力してアプリを終了し、もう一度開いて別のユーザー名とパスワードを入力します。私のiPadをMacbookに接続し、Safari Webインスペクタを開いてiPadで実行中のアプリケーションを検査すると、インスペクタ内の「Storage - > localStorage」に行くと、最後に入力したユーザ名とパスワードだけが表示されますが、入力したユーザー名とパスワードはどこに見つかりませんか?誰がなぜこのようなことが起こるかについてのアイデアはありますか?LocalStorageは最後に入力したデータのみを保存します
JS:
<script type="text/javascript">
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady() {
document.getElementById("btnSave").addEventListener("click",saveData,false);
document.getElementById("btnGet").addEventListener("click",getData,false);
}
function saveData(){
var username = document.getElementById("username").value;
var password = document.getElementById("password").value;
window.localStorage.setItem("uname", username);
window.localStorage.setItem("pass", password);
alert("Your data is stored");
}
function getData(){
var output="Your username is " + window.localStorage.getItem("uname") + "and your password is " + window.localStorage.getItem("pass");
document.getElementById("result").innerHTML = output;
}
</script>
HTML:
User Name: <input type ="text" id="username" /><br />
Password: <input type="text" id="password" /><br />
<button id="btnSave"> Save Data </button>
<button id="btnGet"> Get Data </button>
<div id="result"></div>
私は、Webインスペクタの周りにどこでも探してみましたが、まだ保存されているデータの私の最初のセットはどこに行った見つけることができませんでした。コードに何か問題がありますか?
setStemを実行すると、以前のアイテムがオーバーライドされた場合、LocalStorageストアのキー値のペアのみ –
あなたが行っていることは、localstorageにユーザー名とパスワードを格納することが間違っています。これを克服して、それらのユーザーをどのように検証するつもりですか? – Zeeshan
私はちょうど練習としてユーザー名を使用していますが、私が保存したいのは実際はボタンクリックですが、私がオンラインで見つけた例はユーザー名に基づいているため、動作すればボタンをクリックすることができます。 – michelle9090