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