2017-09-12 39 views
1

我試圖通過jQuery來分析這些數據解析JSON的多維數據稱爲「代碼」的變量,然後返回該國家的費率。一個輸出

對不起,如果這是重複的,我已經查看了答案,它們要麼太複雜,要麼太簡單。

回答

1

var json = '[{"currency_code":"AED","rate":3.6727,"code":"AE","name":"United Arab Emirates"},{"currency_code":"AFN","rate":68.51,"code":"AF","name":"Afghanistan"},{"currency_code":"ALL","rate":111.55,"code":"AL","name":"Albania"},{"currency_code":"AMD","rate":477.85,"code":"AM","name":"Armenia"},{"currency_code":"ANG","rate":1.7775,"code":"AW","name":"Aruba"},{"currency_code":"AOA","rate":165.096,"code":"AO","name":"Angola"}]' 
 
var Code="AW"; 
 
$.each(jQuery.parseJSON(json),function(key,value){ 
 
    if(value.code==Code) 
 
    $("body").append("<span> "+value.currency_code+" |</span><span> "+value.rate+" |</span><span> "+value.code+" |</span><span> "+value.name+" </span><hr>"); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

0
Var Code ; 
var Result = new FromData(); 
$.each(yourjsonfile, function (key, value) { 
     if (youjsonfile.Code = Code) 
Result.append(key, value); 
    }); 

我沒有太多的經驗還我不能發表評論,但你試過嗎? 這是要循環你的數據比較代碼,並將其附加到你的formdata var然後你可以發佈由ajax

0

請參閱以下代碼。希望有所幫助。您可以以對象數組的形式獲取數據,然後應用map和reduce來查找所需的鍵。我剛剛從網址中複製了示例數據並準備了這個小片段。

data = [{ 
 
    "currency_code": "AED", 
 
    "rate": 3.6727, 
 
    "code": "AE", 
 
    "name": "United Arab Emirates" 
 
}, { 
 
    "currency_code": "AFN", 
 
    "rate": 68.4958, 
 
    "code": "AF", 
 
    "name": "Afghanistan" 
 
}, { 
 
    "currency_code": "ALL", 
 
    "rate": 111.5, 
 
    "code": "AL", 
 
    "name": "Albania" 
 
}, { 
 
    "currency_code": "AMD", 
 
    "rate": 477.85, 
 
    "code": "AM", 
 
    "name": "Armenia" 
 
}, { 
 
    "currency_code": "ANG", 
 
    "rate": 1.7775, 
 
    "code": "AW", 
 
    "name": "Aruba" 
 
}, { 
 
    "currency_code": "AOA", 
 
    "rate": 165.096, 
 
    "code": "AO", 
 
    "name": "Angola" 
 
}]; 
 

 

 
code = 'AE'; 
 
arr = []; 
 

 
arr = data.map(function(e) { 
 
    if (e.code == code) 
 
    return e.rate; 
 
}).reduce(function(accumulator, value) { 
 

 
    if (value == undefined) 
 
    return accumulator; 
 
    else 
 
    return value; 
 
}); 
 

 

 
console.log(arr);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

0

試試這個小提琴https://jsfiddle.net/sq8vfx0x/1/

<p class="code"></div> 
<p class="rate"></div> 

var o = [ 
{"currency_code":"AED","rate":3.6727,"code":"AE","name":"United Arab Emirates"}, 
{"currency_code":"AFN","rate":68.5003,"code":"AF","name":"Afghanistan"}, 
{"currency_code":"ALL","rate":111.479,"code":"AL","name":"Albania"}, 
{"currency_code":"AMD","rate":477.85,"code":"AM","name":"Armenia"} 
]; 

var searchCode = 'AF'; 
var code; 
for(var x = 0; x < o.length; x++){ 
    if(o[x].code == searchCode){ 
     code = o[x].code; 
     $('.rate').append('<p>' + o[x].rate + '</p>'); 
    } 
} 
$('.code').append('<p>' + code + '</p>');