2010-09-15 53 views
4

我试图在输入键被按下时运行方法。此方法已被按钮使用。基本上,当用户填写一个文本字段并点击一个提交按钮时,他们会得到一个灯箱。我想要做的是运行同样的动作,但是当按下回车键时。我看着使用.keypress,但我只能找到例子,其中表单标签是一个标准的HTML表单标签,而不是一个asp.net表单标签。我认为目前窗体只响应页面上的.net控件,我不能用jquery方法覆盖它。有任何想法吗?当输入键被按下时运行jquery方法

回答

5

您可以将keypress事件绑定到您的按钮上的文档和trigger()处理程序。

$(document).bind('keypress', function(e){ 
    if(e.which === 13) { // return 
     $('#buttonid').trigger('click'); 
    } 
}); 

只要按下网站上的返回键,就会触发。您可能希望只有在您的输入表单中使用return时才会发生这种情况。您只需要将selectordocument更改为与您的控件匹配的任何种类的选择器即可。

参考:.trigger()

+0

荡,安迪,我觉得我的赛车,你所有的时间。你什么时候睡觉? =) – mkoistinen 2010-09-15 10:06:04

+0

@mkoistinen:我从来没有听说过这个,告诉我更多关于“睡眠”的事情:p – jAndy 2010-09-15 10:10:19

+0

非常感谢Andy! – PhilipP 2010-09-27 09:28:40

1
$(document).keydown(function(e) { 
    // test for the enter key 
    if (e.keyCode == 13) { 
     // Do your function 
     myFunction(); 
    } 
}); 
1
$(".input_loginform").keypress(function(e){ 
    if (e.which == 13){ 
     e.preventDefault(); 
     alert("User pressed 'Enter' in a text input. sender form #"+this.form.id); 
     postlogin("#"+this.form.id); 
    } 
}); 
相关问题