我正在尝试从JSON响应中获取值,其中响应中的另一个值为true ...听起来很乱,我是新手,对不起。 也许这会有所帮助,这是我的JSON响应的一部分:
({"findlocationresult":{
"from":{
"location":[{
"@x":"1460658",
"@y":"6247996",
"displayname":"Stockholm (Ronneby kn)",
"type":"S",
"locationid":7432356},
{
"@x":"1628182",
"@y":"6580960",
"bestmatch":"true",
"displayname":"Stockholm Centralstation",
"type":"S",
"locationid":7400001}
我正在尝试将displayname
设置为bestmatch
。此外,bestmatch
仅存在于响应中的一个项目(?)处。
希望你能得到我想做的事!非常感谢帮助!
干杯!
答案 0 :(得分:0)
你可以通过在jquery中迭代json对象的所有元素来获得。
试试这个
$.each(data.findlocationresult.from.location, function(i, item) {
if(data[i].bestmatch == "true")
alert(data[i].displayname);
...............
});
答案 1 :(得分:0)
试试这个
说你的对象是数据
$.each(data.findlocationresult.from.location,function(i,v){
if(v.bestmatch !== undefined and v.bestmatch == true){
alert(v.displayname);
}
});
答案 2 :(得分:0)
您可以尝试这样做
var str = \\your json string
var json = JSON.stringify(eval("(" + str + ")"));
var fromJson = json.findlocationresult.from.location;
var size = fromJson.length;
var displayname=""
for(i=0;i<size;i++){
if(fromJson[i].bestmatch=="true"){
displayname = fromJson[i].displayname;
break;
}
}
警报(显示名称);