首页 > 代码库 > js 取消回车事件
js 取消回车事件
最近在写一个js小玩意儿,里边涉及到这样一个功能:在textarea中编辑东西完成之后,敲回车,发送消息,清空textarea;
但是出现一个bug:敲回车后,textarea里会残余一个换行符;
想来想去,应该是这个回车敲击以后,清空textarea的方法调用之后,事件还在继续,于是换行符被当做输入,进入了textarea;
demo如下:
但是出现一个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 取消回车事件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。