数组jQuery中项的动态名称

时间:2015-10-13 09:39:30

标签: jquery dynamic

我有代码:

line:1       var listInput = $('input.model');
line:2       var listVariable = [];
line:3       $.each(listInput, function (index, val) {      
line:4             var variable = $(val).data('name');
line:5             var valOf = $(val).val();
line:6             var item = { variable : valOf };
line:7             listVariable.push(item);
line:8       });

我想要"变量"第6行是"变量"第4行

请帮帮我,抱歉我的英语。

1 个答案:

答案 0 :(得分:1)

您需要使用Bracket notation使用动态密钥填充item的属性。

$.each(listInput, function (index, val) {      
    var item = {}; //Create object
    item[$(val).data('name')] = $(val).val(); //Set the value
    listVariable.push(item);
});

或者,您可以将.map().get()

一起使用
var listVariable = listInput.map(function(){
    var item = {};
    item[$(this).data('name')] = $(this).val();     
    return item;
}).get();