我有一个正在开发的应用程序(仍然)并且最近问了一个关于如何在JavaScript中保存选择列表选项的问题。从那时起我就被介绍到jStorage,这是我一直用于代码的jQuery的扩展。我想知道我是否可以更容易地在jStorage中保存所选值?我的选择列表的HTML代码如下;
<select name = 'job' id = 'job' style = 'width: auto; background-color: #777; color: white; font-size: 20px; border-color: #AAA;'>
<option value = 'jobselect'>Select Profession</option>
<option value = 'job1'>Mechanical Engineer</option>
<option value = 'job2'>Software Engineer</option>
<option value = 'jobother'>Other</option>
</select>
我在我的JavaScript文件中有这个来保存选定的值;
document.addEventListener('DOMContentLoaded', function ListChoice() {
var input1 = document.getElementById('job');
if (localStorage['job']) {
input1.value = localStorage['job'];
}
input1.onchange = function() {
localStorage['job'] = this.value;
}
});
我的JS文件中有另外两个函数叫做 loadSettings 和 saveSettings ,有没有办法改变上面的代码,将列表的选定值保存到jStorage在我的功能?只是想知道保存到jStorage是否更容易。非常感谢xx
答案 0 :(得分:0)
注意:像http://garlicjs.org/之类的东西可能是解决问题的捷径。
不确定这是否可以帮助您,但您可以使用以下内容设置jstorage(我只是序列化整个表单):
$.jStorage.set('jobValues', $('#job').serializeArray());
然后你需要以如下方式遍历数组:
var currentStorage = $.jStorage.get('jobValues');
if (currentStorage) {
$.each(currentStorage, function(position,object){
$("input[name='"+object['name']+"']").prop('value', object['value']);
});
}