我正在使用jQuery从DOM中提取项,并希望使用DOM元素的
const obj = {}
jQuery(itemsFromDom).each(function() {
const element = jQuery(this)
const name = element.attr('id')
const value = element.attr('value')
// Here is the problem
obj.name = value
})
如果
如何使用JavaScript使用变量命名对象的属性?
您可以使用这种等效语法:
obj[name] = value
使用ECMAScript2015,您可以直接在对象声明中使用括号表示法:
var obj = {
[key]: value
}
其中
var obj = {
['hello']: 'World',
[x + 2]: 42,
[someObject.getId()]: someVar
}
你甚至可以像这样列出一个对象列表
var feeTypeList = [];
$('#feeTypeTable > tbody > tr').each(function (i, el) {
var feeType = {};
var $ID = $(this).find("input[id^=txtFeeType]").attr('id');
feeType["feeTypeID"] = $('#ddlTerm').val();
feeType["feeTypeName"] = $('#ddlProgram').val();
feeType["feeTypeDescription"] = $('#ddlBatch').val();
feeTypeList.push(feeType);
});