3

以下は、私が囲んだ「url」を介してdivタグ内にWebページをロードするために書いたものです。しかし、それは機能しません。誰でも知ることができます。助けてください。

<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

Proxy, YQL, JSONPこれを回避するためのまたは同等の手法を使用せずに、jQueryのajaxメソッドを使用して外部ドメインからデータをフェッチすることはできません。ブラウザの制限により、ほとんどの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

答えを試す前に..srcパスにhttp:を追加する必要があります。

于 2013-03-15T08:02:23.777 に答える
0

ページと同じサーバー上のファイルにアクセスしていない限り、これは機能しません。外部コンテンツを埋め込もうとしている場合は、iframe を使用する必要があります。

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

于 2013-03-15T07:48:48.153 に答える