2012-06-26 67 views
0

我有一個在Firefox中正常工作的ajax調用,但我在jquery.min.js文件中獲得權限被拒絕的錯誤。我不知道什麼是錯的,或者如何解決它。這是帖子:IE瀏覽器失敗Jquery.html與權限被拒絕

(發佈前宣佈一切)

$.ajax(
    { 
     type: "POST", 
     url: "../ajaxURLs/SearchRequests.aspx?requestID=" + requestID + "&state=" + state + "&status=" + status + "&queue=" + queue + "&oem=" + oem + 
     "&rayMatNumber=" + rayMatNumber + "&mfgPartNumber=" + mfgPartNumber + "&program=" + program + "&po=" + po + "&pr=" + pr + 
     "&businessUnit=" + businessUnit + "&site=" + site + "&buyer=" + buyer + "&requisitioner=" + requisitioner + "&ce=" + ce + "&rea=" + rea + "&pqe=" + pqe + 
     "&startDate=" + startDate + "&endDate=" + endDate, 
     cache: false, 
     success: function (data) { 
      $("#searchResults").html(data); 
      sorttable.makeSortable(document.getElementById("SearchResults")); 
      $("#MainContent_excelDiv").show(); 
     } 
    }); 

任何想法?如果我直接將map映射到SearchRequests.aspx並傳遞它的參數,那麼它在Firefox和IE中都可以正常工作,只有在通過ajax完成後才能正常工作。

是的,我用f12。錯誤是「Permission Denied」jquery.min.js,第9行字符2805.我正在使用jQuery版本1.7.2。

如果我刪除將searchResults div設置爲等於數據,並添加警報以顯示數據,則會完成該操作並在警報中具有正確的信息。提琴手顯示正在生成正確的HTML,Firefox工作正常,它只是IE瀏覽器。其他ajax帖子也在IE中正常工作。

+0

您是否嘗試過調試它? IE具有調試器(F12)和最小腳本格式器,所以不應該太難推理出錯。對於問題本身,至少要提供確切的錯誤,以及它發生的位置。 –

+0

首先,如果你打算使用POST,你不應該在查詢字符串中傳遞你的數據;這就是'data'選項的用處。其次,你可以逐字發佈錯誤信息嗎? – marteljn

+0

@marteljn,將其作爲答案發布 - 我打賭「POST」正是OP的失敗。 –

回答

2

嘗試將您的typePOST更改爲GET。無論如何你都在進行搜索。這將解釋爲什麼它在所描述的場景中工作,而不是與您的AJAX請求。

POST只能在服務器端修改數據時使用,而GET只適用於只讀數據檢索。

編輯

更換$("#searchResults").html(data);document.getElementById("searchResults").innerHTML = data;奇怪的事情是發生在那個JQuery的聲明,請參閱如果不是在該實例使用jQuery將工作。如果它顯示在警報中,它也應該在這種情況下工作。

+0

好的,我改變了它,但我仍然得到同樣的錯誤。 – shawleigh17

+1

您的所有資源是否來自同一個域(甚至是子域),協議(http/https)和端口?這聽起來像是它可能是一個跨域/同源策略問題。 – marteljn

+0

+1,因爲它是根據原始問題猜測的。 @ shawleigh17,所以你的實際錯誤是'$(「#searchResults」).html(data);'由於'data'的值而失敗(並且與ajax查詢無關),對嗎? –

相關問題