我想通过jquery使用json对象设置HTML表单元素值。
我已经在HTML本地存储中添加了serializeArray()
的值。
var formData = $('#page-2').serializeArray();
formData.forEach(function(field){
var dataDInfo = {};
if($.inArray(field.name, propertyDList) >= 0){
if($('#'+field.name).data('displayName')){
dataDInfo['present'] = field.value;
dataDInfo[displayName] = $('#'+field.name).data('displayName');
list.propertyDCategory[field.name] = dataDInfo;
} else {`enter code here`
list.propertyDCategory[field.name] = field.value;
}
}
});
现在我拥有json对象中的所有值list
。
我使用
var lists = JSON.parse(localStorage.getItem('list'));
eg: json
{
aa:ab,
bb:{
cc:cb,
dd:db
},
ee:eb
}
现在我想编写一个编辑和更新函数,并使用基于json数据字段的json数据(HTML元素的名称等于json数据字段)填充所有元素值,之后我想更新本地存储列表。
注意:html表单包含输入,单选按钮,检查列表,选择元素类型。
元素正在根据select元素进行更改。
有人可以帮我写代码吗?
感谢。
答案 0 :(得分:2)
迭代列表中的每个json对象,然后使用键使用jquery选择器选择输入元素。使用val方法设置input元素的值。
会是这样的:
for (var key in lists) {
$('[name="'+key+'"]').val(lists[key]);
}