Jquery – 在页面加载时更改事件触发
我在HTML页面上选择控件并使用Jquery设置更改事件。
但是当我尝试更改选择控件中的值时,事件会在页面加载时触发并且不会触发。
有什么想法吗?
$(function() { $('select[id^=Start], select[id^=Finish], select[id^=Lunch]').change(CalculateHours($(this))); });
你的语法错了。
通过编写change(CalculateHours($(this))
,您正在调用 CalculateHours
函数并将其返回值传递给jQuery的change
方法,就像它是一个函数一样。如果您的函数返回另一个函数并且您想要添加它,则只会编写此函数返回的函数作为事件处理程序。
你需要写.change(function() { CalculateHours($(this)); })
您正在尝试将CalculateHours的结果绑定到更改事件。 试试这个。
$(function() { $('select[id^=Start], select[id^=Finish], select[id^=Lunch]').change(function() { CalculateHours($(this)); }); });