码迷,mamicode.com
首页 > Web开发 > 详细

js 取消回车事件

时间:2014-10-31 17:32:38      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:style   http   io   ar   java   sp   on   2014   cti   

最近在写一个js小玩意儿,里边涉及到这样一个功能:在textarea中编辑东西完成之后,敲回车,发送消息,清空textarea;
但是出现一个bug:敲回车后,textarea里会残余一个换行符;
想来想去,应该是这个回车敲击以后,清空textarea的方法调用之后,事件还在继续,于是换行符被当做输入,进入了textarea;

如何让这个回车事件在清空textarea之后就取消呢?

在网上找到这篇文章JS阻止事件冒泡,于是在代码里加了一句

obj.preventDefault();
就解决了;

demo如下:

<html>
<head>
    <script type="text/javascript">

        function BindEnter(obj){
            if(obj.keyCode == 13){
                if (!obj.ctrlKey) {

                    document.getElementById("ta").value="";
                    obj.preventDefault();//这句话可以阻止回车事件冒泡;如果注释掉这句话,那么会有空格残余;
                } 
            }    
        }
    </script>
</head>
<body onkeydown="BindEnter(event)">
    <textarea id="ta" rows="10" cols="30">
        The cat was playing in the garden.
    </textarea>
</body>
</html>



js 取消回车事件

标签:style   http   io   ar   java   sp   on   2014   cti   

原文地址:http://my.oschina.net/u/1475616/blog/339330

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!