2

我正在循环一个 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——例如。如果我们在group1div 上循环,那么每个组的复选框将被添加到data.group1data.group2等等。

我如何使data.index评估为data.group1

4

2 回答 2

6

很简单:

data[index]

…………

于 2012-11-05T22:48:58.493 回答
0

如果您能够使用 ES6 JavaScript 功能,则可以使用计算属性名称来非常轻松地处理这个问题:

var request = {id : 1236};
var responseMessage = 'The response message';

var resp = {responses: {[request.id]: responseMessage}};

[request.id] 对象键具有动态值

于 2018-01-16T11:00:35.073 回答