2009-12-05 151 views
1

我正在使用jQTouch,它是jQuery的一個實現,爲移動設備提供了一些額外的東西。我有一個ID = testinner的div。 當我使用此代碼,它工作正常從本地文件:jQTouch加載遠程數據

$("#testinner").load("test.html"); 

但是,如果我有一個遠程文件來測試,沒有加載

$("#testinner").load("http://www.google.com"); 

任何人有任何想法,我做錯了什麼?

回答

4

跨域限制的存在,即使是jQtouch應用。你正在做的是通過嘗試請求一個超出當前域名的頁面來違反該規則。

如果要訪問外部數據,它必須支持JSON-P(JSON有回調),或者它需要你的代碼坐落在同一臺服務器上存在。

2

你正在努力使這是由same origin policy禁止Ajax調用。

如果你想從不同的域讀取一些數據,你必須使用JSON-P

$.getJSON('http://www.google.com', function(data) { 
}); 
+0

其硬電話是不是?如果你編輯OP的文章使其易讀,你就冒着別人回答這個問題的風險:) – 2009-12-05 07:12:23

+0

@dcneiner:是的,特別是如果OP真的很難合成這個問題,但有時候SO更關於答案的質量,然後是第一個! – RageZ 2009-12-05 07:15:21

+0

此URL可能會更好,因爲它支持JSON-P:'quotesondesign.com/api/3.0/api-3.0.json回調= my_function' – 2009-12-05 07:33:03