2012-01-13 50 views
2

我试过以下代码,但AJAX调用没有得到响应。 请告诉我为什么我得到一个失败的AJAX调用。jquery ajax从其他域的url获取响应

$.ajax({ 
    type: "GET", 
    dataType:"html", 
    url: "http://www.example.com", 
      //url = any url other than the same domain 
    success: function(response,status){ 
     alert(status); 
     //$("#search_text").val(""); 
     //$("#search_results").html(msg); 
     //setTimeout('refresh()',2000); 

     //alert($("#sw_hdr")); 

    } 
}); 

回答

4

您不能使用AJAX跨域进行通信。那么,你可以但jQuery的Ajax函数不会这样做。查找XSS攻击的详细信息,

这里是一个链接以供参考:http://en.wikipedia.org/wiki/Cross-site_scripting

+0

感谢ü@joe_coolish,大回答我的疑问被清除 – 2012-01-13 04:24:31

0

你仍然可以使用JSONP:link 注意,远程页面必须支持这种格式。 (一样,例如谷歌的API)

+0

JSON还没有得到来自其他领域 – 2012-01-20 09:22:19

+0

AJAX响应我的意思是JSONP技术,其中相应的服务器服务请求数据通过脚本标签。对于这些跨域请求是可能的。返回的代码将会调用一个回调函数(之前必须提交)并提交请求的数据,如下所示:'yourcallback({data1:1111});' – zaphod1984 2012-01-20 10:18:12

+0

ok ok ..谢谢.. – 2012-01-20 10:20:54