2014-05-14 53 views
-1

當我第一次加載一個頁面時,我做了一個ajax調用來爲客戶端提供一些數據。這個調用是針對不同的域進行的,答案是JSONP。調用看起來類似於:僅在Internet Explorer上發現Script5007錯誤「找不到對象」

$.ajax({ 
      type: "GET", 
      url: url + "?callback=?", 
      dataType: "jsonp", 
      contentType: "application/javascript;charset=UTF-8", 
      async: true, 
      success: successCallback, 
      error: errorCallback, 
      cache: true, 
      jsonpCallback: jsonCB 
     }); 

「應用程序/ JavaScript的」將是可能的罪魁禍首這裏爲我做我的研究關於這個問題,但這是存在於以前的版本,從來沒有過這樣的問題的代碼。 在除IE所有的瀏覽器收到以下錯誤(有時,通常是第一次,然後該問題dissappears):

script5007 object not found - line 1, char 1 

的JSONP接收看起來像這樣:

func({"result":"abc"}) 

的的PARAM func是一個有效的JSON,因爲我使用jslint進行了檢查。 任何想法將不勝感激!謝謝!

回答

0

您在$.ajax函數中丟失了對象括號{ }。修改它像這樣:

$.ajax({ 
    url:'', 
    contentType: 'application/javascript;charset=UTF-8', 
    crossDomain:true 
    ...... 
}); 

jQuery的$.ajax方法或者需要一個URL參數和指定爲對象,或包括URL的對象參數的附加選項的可選參數。

+0

由於我無法訪問源代碼,因此調用是從頭頂寫的。它肯定有括號。我編輯了這個問題來反映這一點。 –

+1

@ArielChelsău如果可能,請發佈您的原始代碼。如果需要,請嘗試在瀏覽器中查看源代碼並將其從中拉出。沒有它,沒有人會明確地能夠診斷問題。 – War10ck

相關問題