我在下面的代码中创建了对象数组,当我将对象推送到该数组时,它显示意外标记。
var rulesArray = [];
var messagesArray = [];
var selectedRows = j$('table[id$="selectedProductsDiv"] tr').has('[id$="checkBoxColumn"] :checkbox:checked');
for(i = 0; i<selectedRows.length; i++){
var element = j$(selectedRows[i]).find('input[id$="quantityId"]');
rulesArray.push({
j$(element).attr("name") : "required" //It shows error on this line.
});
messagesArray.push({
j$(element).attr("name") : "Field cannot be blank"
});
}
你们能帮我解决这个问题吗?
最佳答案
如果你想拥有动态键,你需要先用括号表示法构造对象,然后将其推送到数组:
var rules = {};
rules[j$(element).attr("name")] = "required";
rulesArray.push(rules);
在 ES2015 (ES6) 中,对象初始化期间也支持括号语法:
rulesArray.push({
[j$(element).attr("name")] : "required"
});
关于将对象推送到数组时出现 Javascript 意外标记点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31663145/