1. 程式人生 > >Javascript控制回車鍵進行表單(form)提交(轉)

Javascript控制回車鍵進行表單(form)提交(轉)

html urn enter text ctype ret put 焦點 cti

一、采用鉤子事件去捕獲

鍵盤事件有3個:

keydown,keypress,keyup分別是按下,按著沒上擡,上擡鍵盤 。

$(document).keyup(function(event){
  if(event.keyCode ==13){
    $("#submit").trigger("click");
  }
});

推薦:keyup,防止筆記本鍵盤不小心觸摸到。

1、有些文檔中有寫成這樣:

$(window).keydown(function(){
...
})

XP系統IE6下是不成功的。

2、還有input的

$("input").keydown(function(){
...
})

這種情況要在input獲取焦點時候,才能監聽到鍵盤事件。

二、采用form表單的形式

1、回車測試:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">  
<html>  
<head>  
    <meta http-equiv="Content-Type" content="text/html; charset=GBK">  
    <title>submit例子 - aspxhome.com</
title> </head> <body> <h1>本demo演示在文本框中按enter鍵是否觸發提交表單</h1> <h2>默認情況下,一個文本框的時候,提交,不管按鈕type是submit還是button</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="button" value="提交"> </
form> <h2>一個文本框的時候怎麽才能做到不提交,方法是加一個隱藏掉的文本框</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="text" style="display:none"> <input type="button" value="提交"> </form> <h2>只要有type為submit的按鈕存在,一個文本框還是多個文本框都提交</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="submit" value="提交"> </form> <h2>只要有type為submit的按鈕存在,一個文本框還是多個文本框都提交</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="text"> <input type="submit" value="提交"> </form> <h2>多個文本框的時候,不提交,用type為button的按鈕就行啦</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="text"> <input type="button" value="提交"> </form> <h2>用button元素時,FX和IE下有不同的表現</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="text"> <button>提交</button> </form> <h2>radio和checkbox在FX下也會觸發提交表單,在IE下不會</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="radio" name="a"> <input type="checkbox" name="b"> <input type="checkbox" name="c"> <input type="button" value="提交"> </form> <h2>type為image的按鈕,等同於type為submit的效果</h2> <form action="http://www.csdn.net"> <input type="text"> <input type="text"> <input type="image" src="/images/logo.gif"> </form> </body> </html>

2、在form標簽中來禁止enter鍵提交:

<form name="form" action="" method="post" onkeydown="if(event.keyCode==13)return false;" onSubmit="return checkSubmit();"> 

3、可以在form中增加一個隱藏的輸入框。

4、可以在type="test"中增加onkeypress="javascript:return gosearch();"方法。

參考:

http://www.cnblogs.com/soundcode/p/6607746.html(以上內容轉自此篇文章)

http://blog.csdn.net/u010871655/article/details/51260878(以上內容小部分轉自此篇文章)

Javascript控制回車鍵進行表單(form)提交(轉)