【发布时间】:2016-05-21 04:32:14
【问题描述】:
我有多个选择选项下拉菜单,并希望在用户选择后使用本地存储来保存他们的选择。这是 HTML 的示例:
<div class="sel_container">
<select onchange="saveChoice()" id="select_color" class="test">
<option value="">Choose color</option>
<option value="red">red</option>
<option value="blue">blue</option>
<option value="green">green</option>
</select>
<select id="select_type" class="test" onchange="saveChoice()">
<option value="">Choose size</option>
<option value="small">small</option>
<option value="medium">medium</option>
</select>
</div>
我使用了我发现的另一篇文章中的这段代码,它可以保存其中一个选择:
$(function() {
$('#select_color').change(function() {
localStorage.setItem('todoData', this.value);
});
if(localStorage.getItem('todoData')){
$('#select_color').val(localStorage.getItem('todoData'));
}
});
我是 javascript 新手,在阅读了一些内容之后,我似乎需要进行 JSON 字符串化,但我对它的语法感到非常困惑。我尝试使用它,但它不起作用:
var obj = {
"#select_color": this.value,
"#select_type": this.value
}
var stringifyObj = JSON.stringify(obj);
非常感谢您对此的任何帮助!谢谢!
【问题讨论】:
-
this在上下文中是什么?它是在 change 函数内部运行的吗?
标签: javascript jquery arrays json local-storage