我使用ajax请求从PHP页面获得低于JSON的结果。我尝试了很多以获得理想的结果。我已经完成了以下方法,但仍无法达到预期效果。
{
"search": {
"entry": [
{
"attribute": [
{
"name": "title",
"value": [
"Mr."
]
},
{
"name": "mail",
"value": [
"kiran@gmail.com",
"Kiran@yahoo.com",
"kiran@hotmail.com"
]
}
]
}
]
}
}
我尝试了以下搜索,以使用Defiant.js
获取值success: function (data) {
var xx=JSON.stringify(data);
// var got = $.each(data.search.entry[0].attribute, function (i, v) {
// return v;
//
// });
alert(xx);
var z=JSON.search( xx, '//*[name="title"]/value[1]' );
alert(z);
},
我如何获得title='Mr'
或mail='kiran@gmail.com'
等结果。
答案 0 :(得分:0)
如果你的json具有适当的结构,为什么你需要正则表达式解决方案。我已经看到了你的代码和json,似乎你需要 title 和 mail 的第一个索引值。请参阅以下功能,该功能可以搜索标题和邮件。
var arrt = ' {"search": {"entry": [ {"attribute": [ {"name": "title","value": [ "Mr."] }, {"name": "mail","value": [ "kiran@gmail.com", "Kiran@yahoo.com", "kiran@hotmail.com"] }] }] }}';
SearchMyWordTT(arrt,"title");
//SearchMyWordTT(arrt,"mail");
function SearchMyWordTT(arr,index){
arr = JSON.parse(arr);
for(var i=0;i< arr["search"]["entry"][0]['attribute'].length;i++){
if(typeof (arr["search"]["entry"][0]['attribute'][i]['name']) !="undefined" && arr["search"]["entry"][0]['attribute'][i]['name'] == index)
retIn = arr["search"]["entry"][0]['attribute'][i]['value'][0];
}
return retIn;
}