http://jsfiddle.net/FarqA/爲什麼這個xmlHttpRequest失敗>?
ajax_info.txt
是我電腦上的有效文件。因爲這樣的錯誤返回:
Uncaught Error: INVALID_STATE_ERR DOM Exception 11
http://jsfiddle.net/FarqA/爲什麼這個xmlHttpRequest失敗>?
ajax_info.txt
是我電腦上的有效文件。因爲這樣的錯誤返回:
Uncaught Error: INVALID_STATE_ERR DOM Exception 11
許多瀏覽器會拒絕通過XMLHttpRequest
加載本地文件作爲安全措施。 AJAX請求由Same Origin Policy限制,但作爲鏈接的維基百科頁面筆記,
同源檢查和相關機制的行爲是在一些極端情況不明確,比如對於那些協議沒有與其URL(文件:,數據:等)關聯的明確定義的主機名或端口。
即使使用相對URL加載本地文件,與使用file:
協議加載文件相同。許多網絡瀏覽器限制了這一點,理由很充分 - 想象一下,在本地機器上運行一個惡意的HTML文件,可能會加載計算機上的任何文件並將其內容發佈到遠程服務器。
所以我的猜測是,問題是你正在嘗試加載本地文件。嘗試在本地或遠程網絡服務器上處理腳本,看看是否能解決問題。 (如果您安裝了Python,則可以轉至相關目錄並運行python -m SimpleHTTPServer 8000
,然後在瀏覽器中轉至http://localhost:8000/)。
在腳本中的每個呼叫太HTTPRequest()
正在創造一個新的請求對象,所以與onReadystateChange
處理請求永遠不會得到發送,在發送請求沒有處理函數。這裏有一個應該工作的小提琴的更新版本:http://jsfiddle.net/HwYUS/
在您的計算機上,還是在您的服務器上?如果腳本位於http://'www.example.com/path/to/script.here','ajax_info.txt'應位於http://www.example.com/path/to/ajax_info。 txt' – Konerak
在我的電腦上。我知道jsfiddle沒有ajax_info.txt的路徑,但我只是發佈這個向你展示我遇到的問題。 'ajax_info.txt'指的是我電腦上的'ajax_info.txt'。它會引起這個錯誤。 – 0x499602D2
因此,您的服務器正在從您的計算機請求文件? – doNotCheckMyBlog