无法使用 jQuery.load 将外部页面加载到我页面的 div 中

2024-03-29

我无法将外部 html 页面加载到我页面的 div 中。

我的 Jquery 代码是:

$(document).ready(function(){
     var url = 'http://www.google.com';
     $.get(url, function(response) {
          $('div#external').html(response);
     });
 });

我的 HTML 页面是

<html><body><div id="external"></div></body></html>

我还尝试使用另一个 JQuery 代码

$(document).ready(function() {
    $('#external').load('http://google.com');
});    

有人可以帮助我吗?

谢谢 阿迈勒


由于浏览器的限制,大多数 Ajax 请求都受到“同源策略”的约束。这意味着在大多数情况下,如果不使用代理、YQL、JSONP 或等效技术来解决此问题,则无法使用 jQuery 的 ajax 方法从外部域获取数据。

雅虎的 YQL 服务是一个纯 JavaScript 选项。有一个插件可以扩展jQuery.ajax允许外部域:https://github.com/padolsey/jQuery-Plugins/blob/master/cross-domain-ajax/jquery.xdomainajax.js https://github.com/padolsey/jQuery-Plugins/blob/master/cross-domain-ajax/jquery.xdomainajax.js

使用此插件应该允许您问题中的 ajax 示例。

另一种选择是使用服务器端代理,然后使用 ajax 请求该页面。如果您的服务器可以运行 PHP,请尝试在谷歌上搜索“php ajax proxy”之类的内容,您将获得大量结果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法使用 jQuery.load 将外部页面加载到我页面的 div 中 的相关文章

随机推荐