4
{
 "id":["123"],
 "optionid_123":"98"
}

我有id作为变量,但我怎么能得到optionid_*?我尝试了一些东西,但似乎没有任何效果。位于适当的each函数内部,并且 jsonid 包含正确的值。这是我尝试访问98不起作用的值:

$.each(data.id,function(){
    var jsonid = this;
    console.log( data.optionid_+jsonid ); // doesn't work
});
4

2 回答 2

9

您可以使用括号表示法

console.log( data['optionid_' + jsonid] );
于 2012-06-11T01:10:49.710 回答
0

我认为你的循环data.id不正确。那是

$.each(data.id, function() {..})

是不正确的。

例如,如果您data看起来如下所示:

var data = [{
 "id":["123"],
 "optionid_123":"98"
},
{
 "id":["456"],
 "optionid_456":"99"
}];

然后,您需要循环data并获取所需的属性。

$.each(data, function(index, val) {
  var jsonid = val.id[0]; // as val.id is array so you need [0] to get the value
  console.log(val['optionid_' + jsonid]); // bracket notation used
});

演示

于 2012-06-11T02:30:00.487 回答