在我的表单上,我阻止用户通过单击文本元素中的输入来提交表单但是,我想允许他们在按钮元素具有焦点时使用回车键提交表单。目前,它仅适用于空格键。我尝试了以下内容:
$("#dyn-gen-form").on("keypress", "#genAttFormBtn", function(e) {
e.preventDefault();
log("pressed a key");
var k = e.keyCode || e.which;
if (k == 13) {
// do the work
return false;
}
});
但它不起作用。通过不工作,我的意思是,事件不会被触发。我一无所获。
答案 0 :(得分:1)
我为你做了一个样本:http://jsfiddle.net/p7vzJ/54/ - 按钮检测空格键并输入键击; 请按空格键或在加载jsfiddle后输入。
如果您不想使用.live
我可以删除我的帖子。请告诉我。
JQuery代码
$(document).ready(function() {
$("#genAttFormBtn").focus();
$("#dyn-gen-form").live("keydown", "#genAttFormBtn", function(e) {
e.preventDefault();
//log("pressed a key");
if(e.keyCode == 32) {
alert('whitespace');
$("#previous").click();
} else if(e.keyCode == 13) {
alert('enter');
}
});
});
喝彩!