回車自動提交 禁止回車自動提交
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
在開發過程中有時候需要回車自動提交,有時候有不不需要回車自動提交。很多人都喜歡用JS控制,但是用jS控制并不穩定。其實瀏覽器已經幫我們做好了這一補。。在網上找到了解答,如下:
今天遇到一個很變態的問題,由于一個input框要用suggest ,會用到回車事件。但是在一個form里面,按回車的時候我的form自動提交了,怎么改動不行。 把submit改成button,也不行。看樣子是自動執行了form.submit() 解決方法如下: 我們有時候希望回車鍵敲在文本框(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以使瀏覽器表現一致。 以下demo列出了一些例子: [code] 本demo演示在文本框中按enter鍵是否觸發提交表單默認情況下,一個文本框的時候,提交,不管按鈕type是submit還是button一個文本框的時候怎么才能做到不提交,方法是加一個隱藏掉的文本框只要有type為submit的按鈕存在,一個文本框還是多個文本框都提交只要有type為submit的按鈕存在,一個文本框還是多個文本框都提交多個文本框的時候,不提交,用type為button的按鈕就行啦用button元素時,FX和IE下有不同的表現radio和checkbox在FX下也會觸發提交表單,在IE下不會type為image的按鈕,等同于type為submit的效果[/code] 該文章在 2011/6/21 15:32:01 編輯過 |
關鍵字查詢
相關文章
正在查詢... |