JQuery – 如果使用JQuery选中,复选框on-change事件不会触发

前端之家收集整理的这篇文章主要介绍了JQuery – 如果使用JQuery选中,复选框on-change事件不会触发前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个检查所有复选框的全部功能。我使用JQuery来做到这一点。

但我也有这个更改函数切换一个类到wrapper div:

$('input[type="checkBox"]').on('change',function(){
    $(this).closest('div').toggleClass('highlight');
});

函数在单击复选框时运行,但如果我单击“全部检查”则不会运行。

有什么办法手动激活使用JQuery的事件?还是有更好的解决方案?

谢谢

编辑:

以下是简化的HTML:

<a id="check_all">Check All</a>
<div>
    <input type="checkBox" name="cb" value="abc">ABC<br>
</div>
<div>
    <input type="checkBox" name="cb" value="pqr">PQR<br>
</div>
<div>
    <input type="checkBox" name="cb" value="xyz">XYZ<br>
</div>

这里是JSFiddle

http://jsfiddle.net/DarcFiddle/d4VTh/

解决方法

点击检查所有你应该调用change()事件这样
$(document).ready(function(){
    $("input[type='checkBox']").on('change',function(){
        $(this).closest('div').toggleClass('highlight');
    });

    $("#check_all").on('click',function(){
        $("input[type='checkBox']").prop('checked',true).change();
    });
});

猜你在找的jQuery相关文章