在JavaScript中输入按键事件

我有一个form带有两个文本框,一个 下拉菜单和一个

。当enter按下该键时,我想调用一个Javascript函数(用户定义),但是当我按下它时,将提交表单。

按下键form时如何防止提交**enter**

回答:

if(characterCode == 13)

{

return false; // returning false will prevent the event from bubbling up.

}

else

{

return true;

}

好的,假设您在表单中有以下文本框:

<input id="scriptBox" type="text" onkeypress="return runScript(event)" />

为了在按下Enter键时从此文本框中运行某些“用户定义”脚本,而不让其提交表单,下面是一些 示例

代码。请注意,此功能不执行任何错误检查,很可能仅在IE中有效。为此,您需要一个更强大的解决方案,但您将获得一般的想法。

function runScript(e) {

//See notes about 'which' and 'key'

if (e.keyCode == 13) {

var tb = document.getElementById("scriptBox");

eval(tb.value);

return false;

}

}

返回该函数的值将警告事件处理程序不要再使事件冒泡,并且将防止进一步处理keypress事件。

回答:

它已经指出,keyCode在现在已经过时。下一个最好的替代which已经也被弃用。

不幸的key是,受现代浏览器广泛支持的受人欢迎的标准在IE和Edge中具有某些[躲避行为。IE11之前的任何版本都仍需要polyfill。

此外,尽管过时的警告对于keyCode和都是不祥的警告which,但删除这些警告将意味着对不计其数的旧版网站的巨大突破。因此,他们不太可能很快就去任何地方。

以上是 在JavaScript中输入按键事件 的全部内容, 来源链接: utcz.com/qa/419395.html

回到顶部