2016-07-29 9 views
0

私はLocalStorageを使用してフィールドの値を覚えています。私は気付いたが、デフォルトの選択オプション(無効)は空白になります。正しくレンダリングするには?LocalStorage:Disabledオプションの空白を選択してください

選択フィールド

<select name="purchasableId" id="metreSelect" class="metre" required> 
    <option value="" disabled selected>Select number of metres</option> 
    <option value="one">One</option> 
    <option value="two">Two</option> 
</select> 

loadStorage機能

function loadSettings() { 
    $("#metreSelect").val(localStorage.setmetre); 
} 

function saveSettings() { 
    localStorage.setmetre = $("#metreSelect").val(); 

} 
+1

としてその値を設定し、なぜそれが選択されています? – epascarello

+0

これは、ユーザーに指示を与えるプレースホルダーとして機能します。 –

+0

すべてのブラウザーがそれを別々に処理します。 http://stackoverflow.com/questions/5805059/how-do-i-make-a-placeholder-for-a-select-box – epascarello

答えて

1

まず、あなたは選択の変化にのlocalStorageに選択した値を保存する必要があります。

$("#metreSelect").change(function(){ 
    saveSettings($(this).val()); 
}); 

function saveSettings(val) { 
    localStorage.setItem("selectedMetre",val); 
} 

それが無効になっている場合はページをロードしている間、あなたが保存された値をチェックする必要があり、利用可能な場合、選択した値

loadSettings(); 
function loadSettings() { 
    if(localStorage.getItem("selectedMetre")){ 
    $("#metreSelect").val(localStorage.getItem("selectedMetre")); 
    } 
} 

チェックjsfiddle

+0

なぜ私はそれを選択したときに私の選択したオプションを覚えていますか? –

+0

更新された回答を確認する –

関連する問題