2011-10-17 82 views
0

我不確定它是否有可能,但我猜想肯定有辦法。jQuery + AJAX +跨域+獲取內容

我想檢查某個頁面是否仍然在線,以及它是否仍然有我期望的內容。爲了演示目的,我試圖獲得遠程站點的標題。

所以我想是這樣的:

$.ajax({ 
    dataType: 'jsonp', 
    jsonp: 'jsonp_callback', 
    url: 'http://www.confickerworkinggroup.org/infection_test/cfeyechart.html', 
    success: function (response) { 
     var newTitle = $(response).filter('title').text(); 
     alert(newTitle); 
    } 
    }); 

但它不工作,這是在Firebug的錯誤:

invalid XML attribute value 
<META NAME=AUTHOR CONTENT="Joe Stewart"> 

我是新來的這一切,所以我不確定主要問題在哪裏(我想這不僅僅是一個)。

編輯:

我想我真的需要它的幫助,是「解析」返回JSONP,這樣我可以用jQuery使用它,如果它是一些簡單的內容。

編輯2:

萬一ANY1正在尋找類似的事情,我碰到this site和它的工作很不錯,但我仍然在尋找一種方式使用jQuery做,並會保持這個貼子更新。

回答

0

它看起來像是在工作,但它沒有在該頁面中返回有效的XML,因爲元標記沒有關閉元素。您可能希望將數據類型設置爲html。

+0

你好,是的還以爲這似乎是工作,但無法迴避的是錯誤... 。當將數據類型更改爲html時,它根本不起作用。我得到「GET http://www.confickerworkinggroup.org/infection_test/cfeyechart.html 200 OK」 - 但有一個空的答案。 – Andrej

-2

這裏是一個示例,可能會幫助您使用jquery ajax。

$.ajax({ 
    type: "[POST|GET]", 
    url: "[URL]", 
    data: "{'[key]': '[value]' }", 
    contentType: "[Content Type] ", 
    dataType: "json", 
    success: function(response) { 
    //TODO: Add function or method to response handler 
    }, 
error: function(e){ 
    //TODO: Add function or method to error handler. 
} 
}); 

類型:請求類型。 url:你想要請求的URL。 data:你想發送的JSON數據(這是一個參數)。 [可選] contentType:您要發送的內容的類型。 [可選] dataType:響應返回的數據類型。 成功:添加響應處理程序。 錯誤:添加錯誤處理程序。

更多有關阿賈克斯$(http://api.jquery.com/jQuery.ajax/)

+0

嗨,我寧願需要幫助我的具體問題。我當然可以自己閱讀官方文件。謝謝! – Andrej