2017-10-16 5 views
1

私は学校でプロジェクトを行っています。このプロジェクトでは、ユーザーがアクティビティを選択してから自分の個人情報を入力できるWebフォームを作成することについて説明します。この情報は管理ページに表示され、選択した内容に応じて、特定のアクティビティでその特定の人物に関するすべての情報を参照できるようにする必要があります。ユーザーを保存すると回答はローカルストアに送信されます

私が苦労しているのは、<select> タグで選択したアクティビティをlocal.storageに表示する方法です。彼らは何を選ぶのか分からないから。

私はsportVal()という名前の関数onsubmitを作成しました。私は私のJSでこのような何かを持っていることによって情報を取得できないようにする必要があり?:

あなたがの値を返すようにしようとしているlocalStorage.getItem(「sportList」)を使用して

function sportVal() { 
 
    var sportVal = document.getElementById("sportList").value; 
 
    localStorage.setItem("sportList"); 
 
}
<form onsubmit="sportVal()" name="frmDataEntry" action="Uppgifter.html" method="POST"> 
 
    <select id="sportList"> 
 
     <option id="Tennis" value="Tennis">Tennis</option> 
 
     <option id="Fotboll" value="Fotboll">Fotboll</option> 
 
    </select> 
 
    </br> 
 
    <input id="Knapp" type="submit" value="Gå vidare >>" /> 
 
</form>

+0

ええ、それは物事のポストサイドでの誤解です。それはsetItemとされています。それでも、setItemを使ってユーザの選択肢の価値を得ることは可能ですか? –

+0

さて、既に設定してあるので、後で 'getItem'を使って取得することができます。 –

+1

[documentation](https://developer.mozilla.org/en-US/docs/Web/API/Storage/setItem)。あなたは 'setItem'のためのキー_and_を必要とします:.setItem(" sportList "、sportVal)'。 – Xufox

答えて

1

既にあなたのストレージに入っている 'sportList'という項目。あなたはちょうどあなたがオブジェクトを保存する必要がある場合、あなたはおそらく必要があります。この

var e = document.getElementById("sportList").value; 
localStorage.setItem('selectedItem', e); 

のような要素を取得し、保存を覚えて可能な場合、あなたは

localStorage.setItem('nameOfItem', itemValue); 

:あなたが使用する必要があるのlocalStorageで何かを保存するには それを文字列にする。

JSON.stringfy(yourObject) 

Mozillaのdocs

によると、キー名 と値を通過したストレージ・インターフェースの「SetItem関数()メソッドは、そのキーの をストレージにそのキーを追加、または更新しますすでに存在する場合は値です。


ストレージ・インターフェースののgetItem()メソッドキー名を渡されると、 は、そのキーの値を返します。

0

これはうまくいくはずです。コードの最初の問題は、関数宣言が実際にローカルストアに格納する値を渡していないことです。

function sportVal() { 
    var sportVal = document.getElementById("sportList").value; 
    localStorage.setItem("sportList",sportVal); 
    //get value of from local storage 
    var result=localStorage.getItem("sportList") 
    alert(result); 
} 
関連する問題