1.form表單中只有一個input標簽,按回車鍵將自動提交表單
當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>
ps: 我對於這個 event.keyCode==13表示沒有看懂,只是理解為判斷條件,但具體還是不懂.如果閣下明白,還請不吝賜教.
如果想添加回車事件,可以在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>
2.關於是否需要自動提交
我們有時候希望回車鍵敲在文本框(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添加背景圖合適些。
以上所述是小編給大家介紹的Form表單按回車自動提交表單,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!