我只想禁用键盘上的 Enter 键。由于某些原因,以下脚本会锁定整个键盘,除了仍然只允许使用 Enter 键。
如果这有助于查明遗漏或错误的内容,我正在使用V.S. 2005年,VB.NET 2.0和I.E. 7。
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<script language="JavaScript">
function TriggeredKey(e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
if (window.event.keyCode = 13 ) return false;
}
</script>
</head>
<body onkeydown="TriggeredKey(this)">
答案 0 :(得分:44)
如果你有jQuery,试试这个:
$('html').bind('keypress', function(e)
{
if(e.keyCode == 13)
{
return false;
}
});
答案 1 :(得分:21)
您的=
应该是==
(比较与分配)
if (window.event.keyCode == 13 ) return false;
答案 2 :(得分:2)
我已成功使用此代码。
function handleKeypress(e){
e = e || window.event ;
if (e == null){
return false;
}
if (e.keycode == 13){
CompleteEvent(e);
}
}
function CompleteEvent(e){
e.cancelBubble = true;
e.returnValue = false;
}
另外,我强烈建议您使用javascript的新形式的挂钩设置。
function setKeyHook()
{
var eventName = 'onkeydown';
var handlerFunc = handleKeypress;
body.detachEvent( eventName, handlerFunc );
body.attachEvent( eventName, handlerFunc );
}
onload = setKeyHook;
祝你好运。
有关详细信息,请参阅this question。 感谢Peter Bailey教我。
答案 3 :(得分:1)
这对我有用。
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<script language="JavaScript">
function TriggeredKey(e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
if (window.event.keyCode != 13 ) return false;
}
</script>
</head>
<body onkeydown="TriggeredKey(this)">
答案 4 :(得分:0)
<script type="text/javascript">
function stopRKey(evt) {
var evt = (evt) ? evt : ((event) ? event : null);
var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
if ((evt.keyCode == 13) && (node.type=="text")) {return false;}
}
document.onkeypress = stopRKey;
</script>
在
之间添加脚本