我有一个在按下回车键时触发的js事件,它运行良好。但是在该事件之后,它还会提交具有提交按钮的表单。如何阻止在上一个按键事件之后该提交按钮获得焦点?
编辑:我不希望提交按钮在按下回车键时提交,只允许在点击时提交。
编辑:我不希望提交按钮在按下回车键时提交,只允许在点击时提交。
<script type="text/javascript">
function stopReloadKey(evt) {
var evt = (evt) ? evt : ((event) ? event : null);
var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
if (evt.keyCode == 13) {
return false;
}
}
document.onkeypress = stopReloadKey;
</script>
或者你可以使用JQuery来实现这个功能,方法如下:
<script type="text/javascript">
$(document).ready(function() {
$("form").bind("keypress", function(e) {
if (e.keyCode == 13) {
return false;
}
});
});
</script>
我不确定我是否理解正确,但如果您想要防止表单被提交:
请附加一个onsubmit事件并从中返回false。
<form onsubmit="submit_handler();"></form>
[...]
function submit_handler()
{
//do stuff
return (false);
}
false
”。任何输入都会触发提交事件,您需要覆盖它 - 这里是一个简短的示例代码(5行),演示如何实现 http://www.bloggingdeveloper.com/post/Disable-Form-Submit-on-Enter-Key-Press.aspx