大概3個星期前就遇到了ajax的提交出錯的問題,一開始是再虛擬機環境的運行的,一直抱404的錯誤,我想是不是我的url寫錯了,一直改url還是報錯,那是就一直納悶了,也就蛋疼了幾天,想想自己以前有過成功的例子,於是重新吧文件替代掉,還是有問題,但是真的無語了。以前原來正確的現在一個個都報錯。
后來干脆直接放到這里的主機(不在虛擬機理完了),放到iis目錄下,然后清空了一下緩存,然后再iis瀏覽器中查看,第一次捕獲到status==0
那是也沒有太在意,因為很晚了,就睡了。知道第二天才想起,不在iis目錄下,報404錯誤,在iis報status==0的錯誤,為什么會不一樣呢。
開始利用搜索引擎了,終於找到了一篇解決的問題的帖子。
現在在這里總結一下:
(一)你沒有裝網站所需的服務器,比如IIS或者Apache之類軟件。因為status=0據說是本地成功響應的代碼,這個我沒有驗證過,但是有人因此出現了問題。
(二)你的響應地址出現了問題,比如GET地址為valid.php而你錯誤的寫為vaild.php,這個時候服務器返回的是404,某種可能性上你調試出來的status也會為0。
(三)這個也是我遇到的問題,我在寫了一個form標簽,然后用submit的onclick事件去處理ajax響應,其中form的action=”。這個時候每點擊一次submit,系統提示一次我的ajax object找不到,或者其它不相干的錯誤。調試JavaScript也是出現status=0的問題。我用普通的button代替submit button問題就解決了。
(四)一般在自己機器上調試的時候localhost和127.0.0.1是相同的,都是代表本機的意思。但是一般裝Mysql的時候默認配置是localhost,對於請求127.0.0.1的連接是拒絕的。這樣在前台測試Ajax時,FF中的status=0,但是這個時候用isNaN驗證卻不是數字。IE中直接提示Access is denied。這樣的話,問題也就不能稱之為問題了。在調試的時候根據Mysql默認配置使用localhost,或者你自己的特殊設置。如果想解決Access is denied的錯誤,可以參照 http://blog.csdn.net/xport/archive/2007/05/05/1596668.aspx解決方法。
失敗是成功之母,只要我們不放棄,多想想幾個為什么,問題可能就變得簡單,而且可以解決了。最后感謝那些大神,是因為他們的無私奉獻,才有我們站在巨人肩膀上得機會,才可以讓我們少走很多的路。
最后希望如果你遇到了通過的問題,我這篇文章能給你啟發,最后解決問題……
其實學習之中,成功是不需要學習的,失敗才是我們需要的。用馬雲的話說學習別人成功的方法,你可能死得更快。有些亂侃了~