3

我需要将我的属性动态添加到我的输入中,但它不起作用。

  • this.nomRoot 是此处“输入”组件的名称。

  • this.lstAttr 是一个具有“name”或“checked”等属性的数组。

  • this.lstAttrValue 是一个具有属性值的数组,例如“myCheckbox”或“true”。

这是我的代码:

Component("Input", {
    add: function(element, type) {
       html = $('<'+this.nomRoot+' type="'+ type +'" />').appendTo('#'+element);

       for(key in this.lstAttr) {
          alert(this.lstAttr[key]);
          alert(this.lstAttrValue[key]);
          $(html).attr("'"+this.lstAttr[key]+"', '"+this.lstAttrValue[key]+"'");
       }

    }
});

所以我的代码使用萤火虫运行,但不添加属性。

我尝试过这样的事情:

  • this.lstOptions 是一个包含属性和属性值的数组,例如“name, myCheckbox”

    $("<"+this.nomRoot+" />").attr(this.lstOptions).appendTo(element);
    
4

1 回答 1

3

您要设置属性和值,只需引用两个索引即可。无需构建某种字符串。

$(html).attr(this.lstAttr[key], this.lstAttrValue[key]);
于 2012-11-28T21:17:12.113 回答