jquery .bind阻止在页面加载时运行

我有一个jquery函数,它将表单上的选择字段绑定到多个操作。 它绑定到更改和键盘,以便捕获鼠标和键盘点击。

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

这非常有效。

但是,除了运行change和keyup函数之外,还在第一次加载页面时调用calculateAmounts()函数。 我想在首次加载页面时阻止此代码运行。

当您在$(’#user_id’)元素上调用.change()时,您将触发更改事件,该元素将调用您的change / keyup事件处理程序。 如果删除.change()调用,则在页面加载时不会触发该事件:

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

试试这个(考虑到#user_id是输入字段)

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