Javascript AJAX外部URL?

Javascript AJAX外部URL?,javascript,jquery,cordova,Javascript,Jquery,Cordova,我正在开发一个简单的移动应用程序,可以从XML文件中显示汇率。现在的问题是,我从服务器读取XML,所以我必须将完整的URL放入.ajax中,但它似乎不适用于外部URL。有人能告诉我如何解决这个问题,或者如何替换代码使其正常工作吗 $(document).ready(function() { $.ajax({ type: "GET", url: "http://www.domain.com/currencies.xml", dataType: "xml", su

我正在开发一个简单的移动应用程序,可以从XML文件中显示汇率。现在的问题是,我从服务器读取XML,所以我必须将完整的URL放入.ajax中,但它似乎不适用于外部URL。有人能告诉我如何解决这个问题,或者如何替换代码使其正常工作吗

$(document).ready(function() {
  $.ajax({
    type: "GET",
    url: "http://www.domain.com/currencies.xml",
    dataType: "xml",
    success: function(xml) {



    $(xml).find('Currency').each(function(){

    var Name = $(this).find('Name').text();
    var ValueUSD = $(this).find('ValueUSD').text();
    var ValueEUR = $(this).find('ValueEUR').text();
    var ExValueUSD = $(this).find('ExValueUSD').text();
    var ExValueEUR = $(this).find('ExValueEUR').text();

    $('#content').append('<div class="currencyBox"><div class="currency">'+Name+'</div><div class="tab1"><div class="half">'+ValueUSD+'</div><div class="half">'+ValueEUR+'</div></div><div class="tab2"><div class="half">'+ExValueUSD+'</div><div class="half">'+ExValueEUR+'</div></div></div>');

    });



    }
  });
});

</script> 
$(文档).ready(函数(){
$.ajax({
键入:“获取”,
url:“http://www.domain.com/currencies.xml",
数据类型:“xml”,
成功:函数(xml){
$(xml).find('Currency').each(function(){
var Name=$(this.find('Name').text();
var ValueUSD=$(this).find('ValueUSD').text();
var ValueEUR=$(this.find('ValueEUR').text();
var ExValueUSD=$(this).find('ExValueUSD').text();
var ExValueEUR=$(this.find('ExValueEUR').text();
$(“#内容”)。追加(“”+Name+“”+ValueUSD+“”+ValueEUR+“”+ExValueUSD+“”+ExValueEUR+“”);
});
}
});
});

由于同源策略,Ajax不适用于跨域。在这种情况下试试JSONP。

查看关于JSONP的jquery文档。特别是在html5中,有可能进行跨站点请求,但是大多数工具(firebug、noscript、adblock)和一些默认浏览器正在阻塞此类请求。因此,我坚持认为jsonp是最可靠的源代码。

您永远无法对不同的域执行ajax请求。您必须编写一些可以调用的服务器端脚本,并让该脚本检索远程文件。如果您从file://协议加载HTML,iOS上的web浏览器、Android和BB将不受同源策略的影响。PhoneGap应用程序经常利用这一事实。