回車鍵觸發表單提交的問題

咱們有時候但願回車鍵敲在文本框(input element)裏來提交表單(form),但有時候又不但願如此。好比搜索行爲,但願輸入完關鍵詞以後直接按回車鍵當即提交表單,而有些複雜表單,可能要避免回車鍵誤操做在未完成表單填寫的時候就觸發了表單提交。瀏覽器

要控制這些行爲,不須要藉助JS,瀏覽器已經幫咱們作了這些處理,這裏總結幾條規則:設計

若是表單裏有一個type=」submit」的按鈕,回車鍵生效。 若是表單裏只有一個type=」text」的input,無論按鈕是什麼type,回車鍵生效。 若是按鈕不是用input,而是用button,而且沒有加type,IE下默認爲type=button,FX默認爲type=submit。 其餘表單元素如textarea、select不影響,radio checkbox不影響觸發規則,但自己在FX下會響應回車鍵,在IE下不響應。 type=」image」的input,效果等同於type=」submit」,不知道爲何會設計這樣一種type,不推薦使用,應該用CSS添加背景圖合適些。 實際應用的時候,要讓表單響應回車鍵很容易,保證表單裏有個type=」submit」的按鈕就行。而當只有一個文本框又不但願響應回車鍵怎麼辦呢?個人方法有點彆扭,就是再寫一個無心義的文本框,隱藏起來。根據第3條規則,咱們在用button的時候,儘可能顯式聲明type以使瀏覽器表現一致。orm

作了一個 demo(點擊查看) 列出了一些例子。element

相關文章
相關標籤/搜索