今天在写一个小程序时,用到了在文本框中捕捉回车键的功能,我想肯定能够用Javascript实现,于是百度了以下,得到如下实现。

HTML页面如下:


        

JS文件实现如下:

function onKeyPress(event) {
    event = event || window.event;
    if (event.keyCode == 13) {
        event.returnValue = false;
        $('#message').val('').focus();
    }
}

一开始我是用Google Chrome浏览器测试的,发现一切良好,可是刚刚用IE11浏览器测试时,发现事件是可以捕捉到,但是文本框被清空后,光标另起一行闪动,也就是说实际上还是换行了,很奇怪的是如果我用“shift+enter”的方式,就运行良好。百度了很多,基本上都是上述解决方法,对IE11没有作用。后来查找资料发现,还需要新增一行js代码:

event.preventDefault();

上面代码就是阻止事件的默认行为,显然IE浏览器需要这个操作。