我正在使用此演示:https://github.com/ezraroi/ngJsTree
API参考:https://www.jstree.com/api/#/
我做了两个例子
首先我有一个复选框。当我选中任何复选框时,它会显示所选的项目对象(代码簿:http://codepen.io/naveennsit/pen/MKJdOZ?editors=101)
$scope.getSelectedCategories = function() {
alert('---')
var selected_nodes = $scope.treeInstance.jstree(true).get_checked(true);
console.log(selected_nodes);
};
但是当我删除此复选框时,控制台中不显示点击和选中的项目(代码簿:http://codepen.io/naveennsit/pen/RrKmxp)
我在两个例子中使用了相同的功能,但第二个功能不起作用。
答案 0 :(得分:1)
根据jsTree的文档.get_checked(true)返回“所有已检查节点的数组”。如果您没有与节点关联的复选框,那么我不确定它是否有效。或者,如果没有重要的解决方法,它将无法运行。但是,文档说“如果在设置中打开tie_selection,则此函数将返回与get_selected相同”。这可能会为您提供所寻求的解决方案。否则,您可以将.get_checked更改为.get_selected 我找到的文档可以找到here. 在页面上找到.get_checked fyi。
修改强> 我决定亲自尝试一下。
$scope.getSelectedCategories = function() {
var selected_nodes = $scope.treeInstance.jstree(true).get_selected(true);
alert(JSON.stringify(selected_nodes));
};
这提醒了对象。