我正在开发一个项目,我有一个复选框,我想要一个函数在复选框从固定状态变为未选中时运行,反之亦然。
这是复选框:
<input class="form-control main_checkbox_class"
type="checkbox"
value="1"
checked="checked"
id="main_checkbox_id" >
然后在我的javascript中我有:
jQuery(function($) {
$('.main_checkbox_class').change(console.log('hello'));
});
然而,当我运行它时,在页面加载'hello'打印到控制台,然后当我选中或取消选中复选框时没有任何反应,我不知道为什么会发生这种情况,任何修复此问题的帮助都会很大赞赏。
答案 0 :(得分:2)
$(function() {
$('.main_checkbox_class').change(function() {
console.log( $(this).is(':checked') );
});
});
答案 1 :(得分:2)
您需要提供事件处理程序作为函数引用。当您将console.log
的结果分配给事件处理程序时,您的代码在加载时运行。试试这个:
$('.main_checkbox_class').change(function() {
console.log('hello');
});