js树不起作用,即当处理check / uncheck事件并将所有复选框设置为true时

时间:2019-08-22 10:05:55

标签: javascript jquery jstree jstree-dnd

我正在使用jstree绑定数据。我已经选中(选中)所有复选框,还调用了复选框的check / uncheck事件。它在Chrome中工作正常,但在IE中我可以处理选中/取消选中事件,但默认情况下不会选中(选中)所有复选框。

请找到以下代码:

$('#filterResult').jstree({
        "core": {
            "data": data,
            "themes": {
                "icons": false
            },
            check_callback: false
        },
        'checkbox': {
            three_state: true,
            cascade: 'none',
            whole_node: false, 
            tie_selection: false, // when remove this then all checkbox are selected by dafualt but check/uncheck event is not working
            real_checkboxes: true
        },
        "plugins": [
            "wholerow",
            "checkbox"
        ]
    })
        .on('loaded.jstree', function () {
            $("#filterResult").jstree().check_all(true);
           // $("#filterResult").jstree("select_all");               
        })
        .on("check_node.jstree uncheck_node.jstree", function (e, data) {

          console.log(data.node.id);
            }
        });

当我从“复选框”中删除tie_selection:false时,则选中了IE中的所有复选框,但是很好,但是复选框的check / uncheck事件不起作用。

以上代码在Chrome浏览器中正常工作。

1 个答案:

答案 0 :(得分:1)

由于某些原因, loaded.jstree 事件未在IE上触发(尝试设置断点,不起作用)。

为此,您可以尝试将其替换为 ready.jstree

这里是代码的pen

希望有帮助!