[英]How to block form submission when the enter key or return key is pressed?
我有一個表單,我使用JQuery,我不認為我需要在這篇文章中放置代碼,問題是非常基本的。
但是當人們按下回車鍵或返回鍵時,我想阻止表單提交。
同時,我有textareas,用戶需要能夠按Enter / Return鍵。
一個快速而討厭的黑客,但通常比在每個字段中阻止按鍵更可靠:添加:
<input type="submit" onclick="return false;" />
在表格的頂部。 表單中的第一個提交充當默認按鈕,用於在當前瀏覽器中按Enter時,因此通過中斷它可以防止發生輸入提交。
然后使用CSS隱藏和/或移動按鈕,使其無法看到。
但是,阻止輸入提交並不總是一個好主意; 它是瀏覽器預期工作的標准方式,而且有些用戶確實需要它。
在文檔級別設置一個標志,submitform = false; 驗證提交的內容。 更改提交按鈕的onclick處理程序中的標志。
你不能在表單中添加一個onsubmit屬性,然后檢查它是否是使用回車鍵提交的?
你可以試試這個
jQuery(document).ready(function(){
validSubmit = false;
})
jQuery('myForm textarea').keypress(function(e) {
if (e.which == 13) {
validSubmit = true; // if the pressed key is enter, then allow submissions
}
})
jQuery('myForm').submit(function(){
if (!validSubmit) {
return false; //if submitting the form is not allowed, then cancel submission
}
})
除非在textarea上按下回車鍵/返回鍵,否則這將取消所有提交。 如果您使用的是按鈕,則還需要添加一個功能。
jQuery('form button.validSubmit').click(function(){ //or 'form input[type="submit"]'
validSubmission = true;
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.