表單按回車自動提交


1、當form表單中只有一個<input type="text" name='name' />時按回車鍵將會自動將表單提交。

<form id='form1' action='a1.jsp' method='post'>
<input type='text' name='name' />
</form>

再添加一個<input type="text"/>按下回車將不會自動提交,但是頁面上顯示一個不知所雲的輸入框挺別扭,后從網上搜到兩個解決辦法:

  1;添加一個<input type='text' style='display:none'/>不顯示輸入框,然后回車之后也不會提交:

<form id='form1' action='a1.jsp' method='post'>
<input type='text' name='name' />
<input style='display:none' />
</form>

  2;添加一個onkeydown事件,然后回車之后也不會顯示:

<form id='form1' action='a1.jsp' method='post'>
<input type='text' name='name' onkeydown='if(event.keyCode==13) return false;'/>
</form>

如果想添加回車事件可以在onkeydown事件中添加判斷提交表單:

<form id='form1' action='a1.jsp' method='post'>
<input style='display:none' />
<input type='text' name='name' onkeydown='if(event.keyCode==13){gosubmit();}' />
</form>

 我們有時候希望回車鍵敲在文本框(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添加背景圖合適些。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM