王多静

这里是我的记事本

导航

UC浏览器input文本框输入文字回车键自动提交

这是测试今天在jira给我提出的一个bug

下面是贴的代码

屏蔽或者禁止回车键

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <!--直接行内加-->
        <!--<input onkeydown="if(event.keyCode==13){event.keyCode=0;event.returnValue=false;}">-->
        
        <!--非行内加-->
        <form action="https://www.baidu.com" method="post" onsubmit="">
            <input type="text" onkeydown="textShieldEnter()" />
            <input type="submit" value="提交"/>
        </form>
        <script>
            //uc浏览器有键盘回车自动提交功能,屏蔽如下
            function textShieldEnter(){
                if (event.keyCode == 13) {//判断是否为回车键,Event是window对象的一个属性,是全局的。
                      event.keyCode = 0;//屏蔽回车键
                      event.returnValue = false;
                      alert("不许enter提交!!");
                  }
            }
        </script>
    </body>
</html>

 

但是表单表格多的时候 , 就不想这样做了, 这样全部没有回车提交了

document.onkeydown = function(e) {
        var login = (typeof event != 'undefined') ? window.event: e;
        if(login.keyCode == 13) {
            return false;
        }
    };

 

刚刚看到一个很全的总结 https://www.cnblogs.com/caicaizi/p/6072554.html 总结的"只要把type="submit"改成type="button"然后js提交, 在不要有一个type=”text”的input就行了。就不会发生回车跳转。 "

<!----2019.1.21---->

上周改完之后, 浏览器有缓存, 提交的时候, 竟然提交不了了:

原因是把<input>type="submit"改成type="button"了, [自己创建的新bug]

解决: 应该给这个<input>一个点击事件,来触发form表单提交,

        同时<input type="button"  name="不要等于submit"/>,

       还需要给<form>加id

<form action="/lineManager/add" method="post" id="publishSubmit" onsubmit="return checkForm()">

<div class="publish-btn">
                <input type="button" name="别直接为submit" onclick="formSubmit()" value="立即发布" >
            </div>
</form>

 

 

//给新按钮加提交表单
    function formSubmit(){
        $("#publishSubmit").submit();
    }
    

 

posted on 2019-01-18 16:38  王多静  阅读(640)  评论(0编辑  收藏  举报