如何以编程方式启动复选框的on_change处理程序?

时间:2016-03-09 07:47:55

标签: jquery

有一个checkbox

<input type="checkbox" id="cacher" />
...
<script type="text/javascript">

$(document).ready(function() {

        ...

        $('#cacher').on("change", function() {
            var deb = convertDateFormat3($("#date_deb_").val());
            var fin = convertDateFormat3($("#date_fin_").val());
            listeMvt.ajax.url("<?php echo RP_SSP; ?>server_processing_mvtcaisse.php?deb="+deb+"&fin="+fin).load(); // it reloads a datatable's data
        });
        // the next two lines dont work
        $("#cacher").prop("checked",true);
        $("#cacher").change();
        ...
});
</script>

在准备好文档时,我希望选中复选框,然后启动它的on_change事件,但数据表的数据不会更改!那么如何启动复选框的处理程序?

1 个答案:

答案 0 :(得分:0)

对此更好的解决方案如下

var checkboxListener = function(){
     var deb = convertDateFormat3($("#date_deb_").val());
     var fin = convertDateFormat3($("#date_fin_").val());
     listeMvt.ajax.url("<?php echo RP_SSP; ?>server_processing_mvtcaisse.php?deb="+deb+"&fin="+fin).load(); // it reloads a datatable's data
}

$(document).ready(function() {
    ...

    $('#cacher').on("change", checkboxListener);
    checkboxListener();
}

它不是以编程方式触发事件的好方法。即使您想这样做,也可以使用trigger这样的方法

$('#cacher').trigger("change");