【发布时间】:2016-01-18 04:10:47
【问题描述】:
当我根据输入表单的form中的内容进行循环时 我会取属性名作为数据的选择器元素和对象索引数组,但是索引是变量名
如何将变量名转换为对象数组上的字符串索引 数据?
它旨在使表单中的输入可以从数据对象数组中自动填充
var data = {
id: "4",
Model: "804",
Description: "AXIAL SETTER,100MM, MAGNETIC BASE"
};
var names = [];
if ($('#form').length == 1) {
$('#form :input').each(function() {
names.push($(this).attr('name'));
});
$.each(names, function(key, value) {
$('[name="' + value + '"]').val(data.value);
//value should be change with name,
//for example :
// $('name="Description"').val(data.Description);
});
}
<form action="#" id="form" class="form-horizontal">
<input type="hidden" name="id" />
<br/>
<input type="text" name="Model" placeholder="Model Of product" />
<br/>
<input type="text" name="Description" placeholder="Description Of product" />
<br/>
<button type="submit" class="btn-save">save</button>
</form>
【问题讨论】:
-
你试过
jquery.loadJSON吗? -
是的,当然。来自ajax响应的真实数据,但为了便于编写我手动创建。如数据变量中所见
-
但我很难将 jquery 变量名 "value" 理解为 object array index ,例如 "value" 成为索引 "id"从而成为 " data.id " @Arvind
标签: javascript jquery arrays json object