我循环遍历jQuery选择器并尝试将表单元素的值分配给容器变量,然后可以将其作为JSON传递给进一步的操作。
假设有三组复选框,每组都在自己的div中,名为group1,group2和group3。
这是伪代码,但是像这样:
var data = {};
var groups = {
'group1': obj with a bunch of key val pairs for checkboxes,
'group2': another obj,
'group3': and another obj
}; // these define divs / groups of checkboxes
// create all the checkboxes and divs from the groups object somewhere in here
//now build a function to loop over the groups and get any checked boxes
function getInputs(){
$.each(groups, function(index, el) {
// this is where I am stuck
data.index = $('#' + index + ' input:checked'); // <-- how to do this?
});
}
所以基本上我想将选中项的值添加到data
对象中的正确项目 - 例如。如果我们循环遍历group1
div,则每个组的复选框都会添加到data.group1
,data.group2
等。
如何将data.index
评估为data.group1
?
答案 0 :(得分:6)
简单如下:
data[index]
.......
答案 1 :(得分:0)
如果您能够使用ES6 JavaScript功能,则可以使用Computed Property Names轻松处理此问题:
app.filter('unique', function() {
return function(input, key) {
var unique = {};
var uniqueList = [];
for(var i = 0; i < input.length; i++){
if(typeof unique[input[i][key]] == "undefined"){
unique[input[i][key]] = "";
uniqueList.push(input[i]);
}
}
return uniqueList;
};
});
[request.id]对象键具有动态值