我从数据库获取jsontext为(id,val),我必须将id名称设置为单选按钮id name和value作为单选按钮的显示名称或值。 JSON.parse将只给出值,如果我指定了id的名称。是否可以通过提供索引来检索值。我怎样才能获得id名称? 示例:
var dbDets = JSON.parse(jsontext);
var s=dbDets[0];
alert(s["DB001"]); //This is working
alert(s[0]);//This is not working.
我的要求是如何使用索引或某种方式检索id和值。 Json Text是
[{ “DB001”: “EMAP”, “DB002”: “SAMPLEDB”, “DB003”: “webuserstat”}]
答案 0 :(得分:2)
我认为这就是你的意思。以下是如何遍历对象的属性。如果它是一个对象(而不是数组),则只能按名称而不是索引获取其成员。
for (var i=0;i<dbDets.length;i++) {
for (var prop in dbDets[i]) {
if (dbDets.hasOwnProperty(prop)) {
alert('index:' + i + ',name:'+prop+', value:' + dbDets[i][prop]);
}
}
}
可能是您希望以不同方式序列化数据,以便每个项都具有一致的命名属性,并将键(“DB001”)存储为对象中的值,而不是将其用作属性名称。
我假设数组dbDets
看起来像这样:
[{ DB001: "somevalue"}, {DB002: "somevalue"}, ... ]
如果您存储如下数据,那么使用这些信息会更容易:
[{ id:"DB001", value: "somevalue"}, {id: "DB002", value: "somevalue"}, ... ]
然后,您可以像dbDets[index].id
和dbDets[index].value