我有一组自动完成文本菜单,我试图将它们绑在一起工作,类似于一年制模型选择菜单列表。您首先填写年份,然后过滤制作,然后过滤模型。我的字段过滤完美,但我希望禁用和清除缺少按字段填充的字段的字段。例如,如果年份为null,则禁用make model字段,或者如果清除make,它还将清除模型字段并将其设置为禁用。
我的想法是将字段分配给一个组,并将该组作为数组传递给json对象。例如,
JS加载一次,并为每个文本字段调用init函数。
spec.group = yearMakeModelGroup
spec.id = fieldId
var group={};
init = function(spec) {
var groupId = spec.group;
if(!group.hasOwnProperty(groupId)) {
group = {groupId:[]};
}
group.groupId.push(spec.id);
};
我无法弄清楚如何动态创建数组名称,以便我可以将此代码与页面上的其他组一起使用。示例yearMakeModelGroup = year,make,model plus forsaleGroup = forsale,forsalebyowner,auto。
答案 0 :(得分:1)
您需要创建一个对象,然后使用bracket notation(member operator)创建动态密钥
if(!group.hasOwnProperty(groupId)) {
var obj = {};
obj[groupId] = [];
group = obj;
}