我在一个HTML页面上有选择控件,使用Jquery设置更改事件。
但是该事件在页面加载时触发,当我尝试更改选择控件的值时并没有触发。
有任何想法是为什么吗?
$(function() {
$('select[id^=Start], select[id^=Finish], select[id^=Lunch]').change(CalculateHours($(this)));
});
我在一个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)); })
$(function() {
$('select[id^=Start], select[id^=Finish], select[id^=Lunch]').change(function() {
CalculateHours($(this));
});
});