在jQuery中,我编写了一个简单的ajax调用,使用雅虎的YQL服务将一种货币转换为另一种货币。
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)中失败,错误消息为"拒绝访问"。我想这与安全有关,但不知道如何解决,有什么建议吗?
您在Stack Overflow上看到这个问题了吗?这是一个非常相似的问题,我想你可能会在那里找到解决问题的方法:)
尝试设置具有低安全设置的IE