2012-01-06 97 views
0

jQuery的獲得()我取出由使用jQuery獲得(另一頁一些內容)這樣的 -問題與IE

$.get("http://www.somesite.co.uk/generalsite/PopDownMenu", function (htmlContent) { 
    $("#masternav").html(htmlContent);   
}); 

這個腳本工作正常除了IE以外的瀏覽器。

它是我的腳本還是我從中提取的頁面?

+0

如果它在其他瀏覽器中有效,我看不到任何在IE中不起作用的原因。回調是否觸發? – 2012-01-06 12:44:54

+0

這是您的第三方網站嗎?在這種情況下,你可能是同源策略的受害者http://en.wikipedia.org/wiki/Same_origin_policy – 2012-01-06 12:45:53

+0

@JamesAllardice,我無法找到它在其他瀏覽器上工作的原因,因爲他似乎違反了相同的原產地政策。 – 2012-01-06 12:46:15

回答

2

我取出由使用jQuery獲得(另一頁一些內容)這樣

你似乎違反same origin policy。您無法發送跨域AJAX請求。因此,除非您的網站託管在http://www.watchfinder.co.uk/上,否則出於安全原因,您無法將AJAX請求發送到此域。您可以查看following article以瞭解可能的解決方法。

+0

我的網站託管於http://thewatch.watchfinder.co.uk,這是我可以在頁面上做什麼,以允許從該表中訪問? – seanjacob 2012-01-06 12:48:25

+0

@seanjacob,不,你違反了相同的原產地限制政策。 'thewatch.watchfinder.co.uk'和'www.watchfinder.co.uk'被視爲跨域。閱讀我在我的答案中鏈接的文章,瞭解可能的解決方法。 – 2012-01-06 12:49:19

+0

@DarinDimitrov:令人驚訝的是,來自OP問題的uri似乎在跨域的ajax調用中工作得很好。可能是有某種CORS在運行?至少在FF和Chrome中運行良好。檢查http://jsfiddle.net/MfVea/ – jAndy 2012-01-06 12:51:21