Javascript 从同一文本输入捕获多个onkeyup事件

Javascript 从同一文本输入捕获多个onkeyup事件,javascript,jquery,jquery-events,onkeyup,Javascript,Jquery,Jquery Events,Onkeyup,我正在为dom脚本创建一些逻辑,最后发现了一个问题,即在按下一个键时需要执行多个方法。似乎最后定义的onkeyup是执行的,下面是一些代码: 第一种方法: ...var elements=$$('[id^='+table+']&[id$='+tableField+']'); elements.each(function filter(item) { //for each item item.onkeyup = function() { ... ...//f

我正在为dom脚本创建一些逻辑,最后发现了一个问题,即在按下一个键时需要执行多个方法。似乎最后定义的
onkeyup
是执行的,下面是一些代码:

第一种方法:

...var elements=$$('[id^='+table+']&[id$='+tableField+']');

elements.each(function filter(item) {
    
    //for each item 
    item.onkeyup = function() { ...
...//for each referenced input    
for(var i=0, fields=htmlFieldElems.length;i<fields;i++){

   //set keyup event for involved fiels in the expression
   $(htmlFieldElems[i]).onkeyup = function() {...
        
第二种方法:

...var elements=$$('[id^='+table+']&[id$='+tableField+']');

elements.each(function filter(item) {
    
    //for each item 
    item.onkeyup = function() { ...
...//for each referenced input    
for(var i=0, fields=htmlFieldElems.length;i<fields;i++){

   //set keyup event for involved fiels in the expression
   $(htmlFieldElems[i]).onkeyup = function() {...
        
对于每个引用的输入,
../

对于纯javascript中的(var i=0,fields=htmlFieldElems.length;i,您可以从onkeyup事件处理程序调用多个方法,如下所示

item.onkeyup = function() {
    func1();
    func2();
    funcn();
}
如果您使用的是jQuery之类的框架,则可以继续添加事件,如下所示:

$('#item').keyup(func1);
$('#item').keyup(func2);
$('#item').keyup(funcn);
原型:

$('foo').observe('keyup', function(event) {
    func1();
    func2();
    funcn();
});

在纯javascript中,您可以从onkeyup事件处理程序调用多个方法,如下所示

item.onkeyup = function() {
    func1();
    func2();
    funcn();
}
如果您使用的是jQuery之类的框架,则可以继续添加事件,如下所示:

$('#item').keyup(func1);
$('#item').keyup(func2);
$('#item').keyup(funcn);
原型:

$('foo').observe('keyup', function(event) {
    func1();
    func2();
    funcn();
});

这就是我使用jQuery所遵循的


希望这有帮助。即使其他的答案也会有帮助。但是这很容易维护:-)

这就是我使用jQuery所遵循的。这是一个


希望这有帮助。。即使是发布的其他答案也会有所帮助。。但这将很容易维护:-)

我从未使用过prototype,但快速的google建议如下:$('foo').observe('keyup',function(event){func1();func2();funcn();})$('foo')。观察('keyup',函数(事件){func1();})$观察('keyup',函数(事件){func2();funcn();});这会执行3个功能吗?是的!你为什么不试试呢。从实验中学习的最好方法!是的,似乎使用了observe,它会将方法添加到事件中,这样您就可以使用keyup事件多次调用observe。谢谢,我从来没有使用过prototype,但快速的google建议如下:$('foo').observe('keyup',function(event){func1();func2();funcn();})$('foo')。观察('keyup',函数(事件){func1();})$观察('keyup',函数(事件){func2();funcn();});这会执行3个功能吗?是的!你为什么不试试呢。从实验中学习的最好方法!是的,似乎使用了observe,它会将方法添加到事件中,这样您就可以使用keyup事件多次调用observe。谢谢