2011-10-30 16 views
0

Jqueryを使用してページのHTMLを読み込み、特定の部分を選択しています。しかし何らかの理由でこれは私が(#1)のために使用したいサイトでは機能しません。 Firebugを使用すると、ページのhtmlを含む回答が得られないことがわかります。誰もそれが動作しない理由を説明することはできますか?クロスドメインJQuery load()は特定のサイトでは機能しません

<head> 
<script class="jsbin" src="jquery.min.js"></script> 
<script type="text/javascript" src="jquery.xdomainajax.js"></script> 

<script type="text/javascript"> 
$(document).ready(
    function(){ 
     $('#1').load("http://ted.europa.eu/udl?uri=TED:NOTICE:310574-2011:TEXT:EN:HTML p"); 
     $('#2').load("http://www.google.com a"); 

    } 
); 
</script> 
</head> 

<body> 
    <p id="1"></p> 
    <p id="2"></p> 
</body> 

何の結果を示すないリクエストに答え:原因ブラウザのセキュリティ制限に

jsonp1319995924645({"query":{"count":"0","created":"2011-10-30T17:32:10Z","lang":"en-US"},"results":[]}); 

答えて

0

を、最も「アヤックス」の要求がsame origin policyの対象となります。要求は別のドメイン、サブドメイン、またはプロトコルからデータを正常に取得できません。

は、任意のjQueryのAJAX機能を使用して、私はイエスが、これjquery.xdomainajax.jsこれを行うことが可能となることを読んだことがあるdataType: "jsonp"

+0

を設定します。 www.google.com(または試したランダムなサイト)では動作しますが、ted.europa.euでは動作しません。理由はわかりません。 – Niels

+0

任意のjQuery AJAX関数を使用し、dataTypeを設定します。 "jsonp" – Dev