2012-01-15 14 views
-4

爲什麼當我在我的本地 使用JQuery .load.post的東西不是例如JavaScript的jQuery的,載荷,後

$(document).ready(function() { 
    $("body").load("http://google.com"); 
}); 

它不會加載。 與.post相同。 有沒有解決方法?

+2

加載發出AJAX請求,而這些請求絕不會位於兩個不同的域之間。 (JSON除外,但那是不同的) – 2012-01-15 19:19:45

+0

我敢肯定,這不是第一次被問到,在請求之前環顧四周。 – leopic 2012-01-15 19:24:57

+0

可能的重複[無法從其他網站使用jQuery獲取HTML頁面($ .get,$ .ajax)](http://stackoverflow.com/questions/7629905/cant-get-html-page-from-other -site-with-jquery-get-ajax) – PeeHaa 2012-01-15 23:40:34

回答

1

您正在做的事情被瀏覽器內部的反跨站腳本措施阻止。這也被問過好幾次了,我建議你找一個答案。我的理解是僅在Firefox中從本地主機啓用XSS(跨站點腳本)。

+0

好吧,我已經看過,但我找不到任何東西。 – ThElitEyeS 2012-01-15 19:45:46

0

您遇到Same Origin Policy施加的限制。簡而言之,禁止對其他域進行AJAX調用,並且始終會失敗。

您需要使用JSONP(主要適用於API返回的數據)或proxy the request through your own server/domain

+0

http://jquery-howto.blogspot.com/2009/04/cross-domain-ajax-querying-with-jquery.html 這個例子很好,但你有任何想法如何發佈,否則,如果該鏈接得到事情加載的jquery它不能加載它的權利? – ThElitEyeS 2012-01-15 19:55:34

+0

無論如何,謝謝我幫助我的自我,我發現一種方式發送它的JavaScript是自我:) – ThElitEyeS 2012-01-15 23:44:33

0

描述:從服務器加載數據並將返回的HTML 放入匹配的元素中。

此方法是從服務器獲取數據的最簡單方法。

請閱讀http://api.jquery.com/load/

則明確表示,從load()你可以從your server獲取數據。您無法訪問不同域中的數據。

+0

可以有人把我的JSONP例子謝謝。 – ThElitEyeS 2012-01-15 19:48:29

+0

你是什麼意思由JSONP – 2012-01-15 19:50:27

+0

那他們寫的 – ThElitEyeS 2012-01-15 19:53:58