3

在这里,我编写了以下内容,用于通过我附上的“url”加载 div 标签内的网页。但它不起作用。谁能知道。请帮忙。

<html>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<a href="#" onClick="lurl();">Click Here</a>
<br/>
<br/>
<br/><div id="durl">
</div>
<script type="text/javascript">
function lurl(){
$('#durl').load('http://www.tndte.com/Result/');
}
</script>
</html>
4

4 回答 4

1

您不能使用 jQuerys ajax 方法从外部域获取数据,而无需使用Proxy, YQL, JSONP或等效技术来解决此问题。浏览器限制,大多数 Ajax 请求都受制于“同源策略”。

您可以使用https://github.com/padolsey/jQuery-Plugins/blob/master/cross-domain-ajax/jquery.xdomainajax.js并将 js 文件包含在您的页面中。下面是我用来加载外部页面的函数。

function test () {
         $.ajax({
           url: 'http://www.tndte.com/Result/',
           type: 'GET',
           success: function(res) {
             var content = $(res.responseText).text();
             alert(content);
           }
         });
       }
于 2013-03-15T07:51:26.360 回答
1

没错,出于安全原因,ajax 调用无法检索外部页面。

将外部页面放到您的页面上的唯一方法是使用 iframe,或者您可以使用 ajax 调用的简单服务器端代理。

我们不能这样做,除非内容来自同一个域,并且原因 javaScript 的同源策略。

你仍然可以这样做

  1. 使用 iframe 加载内容
  2. 使用服务器端脚本
于 2013-03-15T07:52:18.050 回答
0

除非您在与您的页面相同的服务器上访问文件,否则这将不起作用。如果您尝试嵌入外部内容,则需要使用 iframe。

http://www.w3.org/TR/html4/present/frames.html

于 2013-03-15T07:48:48.153 回答
0

在尝试答案之前..您必须在您的 src 路径中添加 http:。

于 2013-03-15T08:02:23.777 回答