说我有对象:JavaScript变量变量
function obj()
{
this.prop1;
this.prop2;
this.prop3;
}
和数组OBJ的
objects = [new obj(),new obj(),new obj()];
我想轻松地通过每个使用jQuery遍历其中类名是相当于该财产目的。
var itemsIWantToBind = ["prop1","prop2","prop3"];
for(j=0;j<itemsIWantToBind.length;j++)
{
$("."+itemsIWantToBind[j]).unbind().blur(function(){
var id = $(this).siblings(".objID").html();
if(id >= 0)
{
objects[id].itemsIWantToBind[j] = $(this).text());
}
});
}
我的问题是我希望能够使用可变变量通过项目重复此
objects[id].itemsIWantToBind[j] = $(this).text());
^^^^^^^^^^^^^^^^^
指示的部分不正确绑定数组项目的价值,因为它正试图改为绑定它的属性名称。
在PHP这将是一样的:
foreach($itemsIwantToBind as $item)
{
$objects[$id]->$item = "Something";
}
有一个简单的方法在JavaScript中做到这一点?
是,使用方括号:'东西将[PropertyName]'' – georg 2015-02-23 19:02:24
对象[ID] [itemsIWantToBind [J]'? – 2015-02-23 19:04:53
参见http://stackoverflow.com/questions/750486/javascript-closure-inside-loops-simple-practical-example – georg 2015-02-23 19:11:18