2011-06-15 63 views
0

我有一个jQuery的函数,将窗体上的选择字段绑定到多个操作。它绑定到change和keyup,这样鼠标和键盘的点击都被捕获。jquery .bind阻止在页面加载运行

$(document).ready(function(){ 
    $('#user_id').bind('change keyup',function() { 
    calculateAmounts(); 
    }).change(); 
}); 

这很好用。

但是,除了在更改和键入函数上运行外,calculateAmounts()函数在首次加载页面时也会调用。当第一次加载页面时,我想阻止此代码运行。

回答

2

你触发更改事件,当你在$调用.change()( '#USER_ID')元素,将调用您的更改/键盘事件处理程序。如果删除.change()调用,那么在页面加载时不会触发该事件:

$(document).ready(function(){ 
    $('#user_id').bind('change keyup',function() { 
    calculateAmounts(); 
    }); 
}); 
+0

谢谢,工作正常! – JonoB 2011-06-15 16:38:26

0

试试这个(取中consederation即#user_id输入字段)

$(document).ready(function(){ 
    var yourVAL = $("#user_id").val(); 
    $('#user_id').bind('change keyup',function() { 
    if($("#user_id").val() != yourVAL){ 
     calculateAmounts(); 
    } 
    }).change(); 
});