可以将keyup绑定到整个表单



是否有可能将keyup()绑定到整个<form> ?例如,我在表单中有多个<input type="text">字段,我想将keyup事件绑定到所有这些字段,而不必将keyup事件处理程序附加到每个字段。相反,我想将一个keyup事件处理程序绑定到所有这些事件,这样如果任何文本字段检测到keyup事件,事件处理程序将运行。这在jQuery中是可能的吗?

我试着:

$('form').keyup(function() {...});

但是这会使keyup事件处理程序在输入一个字符后无限期地触发。

我不认为这是可能的,但是您可以一次将相同的keyup事件绑定到所有输入:

$('#myform input[type=text]').on('keyup', /* yada */);

您可以尝试这样做:快速演示

$(function(){
   //create one instance for handler:
   var myHandler = function(e){ /* Your function */ };
   //Bind it:
   $("#form input[type=text]").on('keyup',function(e){ myHandler(e);  });
});

最新更新