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(以上内容小部分转自此篇文章)

  • 相关阅读:
    perfnet错误 事件ID:2004 无法打开服务器服务。服务器性能数据将不会被返回。
    尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题
    oracle从dmp文件做数据恢复
    python预科5--函数及lambda匿名函数
    pytest 运行SyntaxError: invalid syntax
    java自动化--testNG集成extentreports(好坑,编辑的时候样式好的,但是发布了就这鬼样子还不能上图)
    git 命令
    java 5
    java JsonMapper
    java springboot mybatis整合
  • 原文地址:https://www.cnblogs.com/EasonJim/p/7514113.html
Copyright © 2011-2022 走看看