1 回答
TA贡献1890条经验 获得超9个赞
首先,您需要创建一个 JSON 对象,而不是一个数组。因此,变量和第一级字段的初始化应按如下方式进行。
var minmax_array = {};
$(".room_minmax_div").each(function(index, data) {
var room = $(this).data('room');
minmax_array[room] = {};
});
max然后,当您使用或值更新二级对象时min,您应该检查是否已经有一个对象分配给该键。如果是,您应该更新该对象而不是分配一个全新的对象。
$(".room_minmax_div input").each(function(index, data) {
//get date
var room = $(this).data('room');
var name = $(this).attr('name');
var value = $(this).val();
if(value == ''){
value = 0;
}
// If there is a value for minmax_array[room], use it as obj. Otherwise create an empty object
var obj = minmax_array[room] || {};
//Obj
obj[name] = value;
minmax_array[room] = obj;
});
然后你的输出将类似于下面的内容。
{
Room1: {
max: "14",
min: "10"
},
Room2: {
max: "7",
min: "5"
},
Room3: {
max: "10",
min: "9"
}
}
添加回答
举报