2017-08-10 85 views
1

我從使用ajax請求的PHP頁面獲得低於JSON的結果。我嘗試了很多以獲得理想的結果。我已經做了下面的方法,但仍然無法按預期得到。JSON值搜索

{ 
    "search": { 
     "entry": [ 
      { 
       "attribute": [ 
        { 
         "name": "title", 
         "value": [ 
          "Mr." 
         ] 
        }, 
        { 
         "name": "mail", 
         "value": [ 
          "[email protected]", 
          "[email protected]", 
          "[email protected]" 
         ] 
        } 

       ] 
      } 
     ] 
    } 
} 

我曾嘗試以下搜索使用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='[email protected]'結果得到的值。

回答

0

爲什麼你需要正則表達式的解決方案,如果你的json具有適當的結構。我看過你的代碼和json,看起來你需要第一個索引值標題郵件。請參閱以下功能,可同時搜索標題郵件

var arrt = ' {"search": {"entry": [ {"attribute": [ {"name": "title","value": [ "Mr."] }, {"name": "mail","value": [ "[email protected]", "[email protected]", "[email protected]"] }] }] }}'; 

    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; 
    } 
+0

https://meta.stackoverflow.com/questions/355102/a-user-massively-tries-to-add-irrelevant-tags-which-i-can-see-while-reviewing-s? CB = 1 –