input、button的不同type值在ajax提交表單時導致的陷阱

來源:互聯網
上載者:User

今天在做利用connection 作表單提交過程中發現,標籤"input"跟"botton"中的type屬性設定原來也是一門學問。
在開發過程中,為了使html代碼更加整潔,我首先利用YAHOO.util.Event.addListener(obj, "click", callback)類載入"click"事件來提交表單,YAHOO.util.Connect.asyncRequest('POST')方式來上傳表單資料,如果表單資訊不正確,那麼作返回處理。而提交的按鈕我採用的是<button type="submit">提交</button>。
這時發現除了IE6能夠對我的表單資料作出正確的處理外,FIREFOX包括IE7都不能對我的錯誤處理作出回應(callback方法中,正對錯誤的處理方式是:只要一碰到錯誤,那麼就通過return false的方式返回)。
這時在我的思路裡想的是,在語句中提交表單資料前我已經做了返回處理,可頁面怎麼還是給重新整理了呢。
晚上回到家裡再次對今天碰到的問題做測試,結果發現,我忽略了一點,資料也的確是有提交了,並且在地址欄中可以明確地看到各種資料,而事實也證明,資料肯定是被提交了,於是想到了我的按鈕,按鈕的類別設定是"submit",之前在寫代碼時,都是直接在"input"或者"button"中,如果類別設定為"submit"時,都是這樣寫的onclick="return fun();"或者onclick="fun(); return false;";這自然是不會出現問題,怪就怪在,addListener類的值並不是直接影響到按鈕的,一點擊按鈕,自然也就會提交資料了。
慘痛啊~~~~
附:button預設type值為submit,因此最好標識下類別!!!謹記!
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.