zoukankan      html  css  js  c++  java
  • 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(以上内容小部分转自此篇文章)

  • 相关阅读:
    第十四周 Leetcode 315. Count of Smaller Numbers After Self(HARD) 主席树
    POJ1050 To the Max 最大子矩阵
    POJ1259 The Picnic 最大空凸包问题 DP
    POJ 3734 Blocks 矩阵递推
    POJ2686 Traveling by Stagecoach 状态压缩DP
    iOS上架ipa上传问题那些事
    深入浅出iOS事件机制
    iOS如何跳到系统设置里的各种设置界面
    坑爹的私有API
    业务层网络请求封装
  • 原文地址:https://www.cnblogs.com/EasonJim/p/7514113.html
Copyright © 2011-2022 走看看