В jQuery я написал этот простой вызов ajax для конвертации из одной валюты в другую, используя YQL-сервис Yahoo.
function changeCurrency(amount, currency_from, currency_to) {
var query = "select%20*%20from%20yahoo.finance.xchange%20where%20pair='" + currency_from + currency_to + "'";
var urlservice = "http://query.yahooapis.com/v1/public/yql?q=" + query + "&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys";
$.ajax({
type: "GET",
url: urlservice,
dataType: "xml",
success: function(xml) {
$(xml).find('rate').each(function() {
var rate = $(this).find('Rate').text();
var result = Math.round(amount * rate * 100) / 100 ;
$("#result").html(result + currency_to);
});
},
error: function(xhr, status, error) {
$.jGrowl(xhr + ' ' + status + " " + error);
}
});
}
Вот живая версия в jsfiddle.
Работает нормально в Chrome, FF и Safari, но не работает в IE (9) с сообщением об ошибке «Доступ запрещен». Я думаю, это связано с безопасностью, но не знаете, как ее решить, какие-либо предложения?