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


一、采用鈎子事件去捕獲

鍵盤事件有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(以上內容小部分轉自此篇文章)


免責聲明!

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



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