2012-07-16 233 views
0

我嘗試從另一個服務器加載靜態html頁面。我發出跨域請求。跨域請求

$(document).ready(function(){ 
    $("div[src]").each(function(){ 
    var staticFileURL = $(this).attr('src'); 
    $.ajax({ 
      url: staticFileURL, 
      dataType: 'jsonp', 
      data: {}, 
      error: function(xhr, status, error) { 
      alert(error); 
      }, 
      success: function() { 
       alert("success"); 
      }, 
      jsonp: false, 
      jsonpCallback: 'jsonpCallback' 
     });  
    }); 
}); 

但我得到了chrome錯誤「SyntaxError:意外的標記<」。

在FF「SyntaxError:無效的xml屬性值」中。 怎麼了,有人幫我嗎?

+0

通常是「意外的標記<」就像是網頁錯誤HTML的開頭部分,有的像'<'html>錯誤頁你沒有錯誤 ...但如果你在瀏覽器中訪問'staticFireURL'你期待JSON – Onheiron 2012-07-16 13:44:28

+2

,這是什麼產生?它有效的JSON? – ajm 2012-07-16 13:46:00

+0

我的html頁面很簡單,沒有標籤「」和「」。它是一種​​3210 – KarzhouAndrew 2012-07-16 13:57:24

回答

0

JSONP是從服務器獲取json數據,它看起來像你試圖接收HTML數據。 嘗試把你的HTML數據JSON對象內部的服務器上,然後讀取HTML的成功回調:

例如,您的JSON數據從服務器:

{ html: "<html><head>...</head></html>" }

也,你的成功回調應該是這樣的:

success: function(**data**){ }