【发布时间】:2018-02-21 08:50:22
【问题描述】:
我正在尝试通过 JQuery 解析这些数据:
http://www.mycurrency.net/service/rates
我想通过它进行搜索,找到一个匹配的国家/地区代码,并将其存储在一个名为“代码”的变量中,然后返回该国家/地区的汇率。
对不起,如果这是重复的,我已经查看了答案,它们要么太复杂,要么太简单。
【问题讨论】:
我正在尝试通过 JQuery 解析这些数据:
http://www.mycurrency.net/service/rates
我想通过它进行搜索,找到一个匹配的国家/地区代码,并将其存储在一个名为“代码”的变量中,然后返回该国家/地区的汇率。
对不起,如果这是重复的,我已经查看了答案,它们要么太复杂,要么太简单。
【问题讨论】:
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>
【讨论】:
Var Code ;
var Result = new FromData();
$.each(yourjsonfile, function (key, value) {
if (youjsonfile.Code = Code)
Result.append(key, value);
});
我没有太多经验,也无法发表评论,但是您尝试过吗? 这将遍历您的数据比较代码并将其附加到您的 formdata var 然后您可以通过 ajax 发布它
【讨论】:
请参考以下代码。希望有帮助。您可以将数据作为对象数组获取,然后应用 map 和 reduce 以找到所需的键。我刚刚从 URL 中复制了示例数据并准备了这个小 sn-p。
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>
【讨论】:
试试这个小提琴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>');
【讨论】: