我的目标:
通过将其作为一个功能来清理多个keydown函数,从而导致相同的按钮按下。
我的问题:
我做了很多这样的功能:
$("#username").keydown(function(event){
if(event.keyCode == 13) {
$('#loginbtn').click();
};
});
$("#password").keydown(function(event){
if(event.keyCode == 13) {
$('#loginbtn').click();
};
});
触发按钮点击按钮。它太乱了,使用了很多行。我想将这些线组合成一个函数。我的注册表格也有很多盒子。
我尝试了什么?
1 我尝试了下面的代码以及其他不起作用的代码:
$("#username","#password").keydown(function(event){
if(event.keyCode == 13) {
$('#loginbtn').click();
};
});
2 我的另一个想法是使用课程,我只是不知道这是否被认为是“正确”的方式,所以我需要意见:
$(".logintextbox").keydown(function(event){
if(event.keyCode == 13) {
$('#loginbtn').click();
};
});
然后我还要在我的html中添加该类,以便所有登录文本框和所有注册文本框都有唯一的类“分组”它们。
我的问题/ tl;博士:
如何使用多个id或一个类将2个或更多jquery keydown函数组合成一个函数?
答案 0 :(得分:3)
我建议您从表单委派代替个别元素。
$("#your_form_id").on('keydown', 'input', function(event){
if(event.keyCode == 13) {
$('#loginbtn').click();
};
});
这将捕获表单中所有输入上按下的键。
答案 1 :(得分:2)
选择多个元素。 $('#username, #password')
。 $
的第二个参数是上下文。