我通过以下代码以编程方式更改了kendo树视图复选框的状态:
$(node).find('input[type="checkbox"]').prop("checked", !currentItem.checked);
currentItem.checked = !currentItem.checked;
即使孩子未处于真实状态,父母也处于未定义状态。
答案 0 :(得分:2)
更改复选框的状态后,您需要调用树视图的updateIndeterminate
方法。
文档提供了这个示例:
<div id="treeview"></div>
<script>
$("#treeview").kendoTreeView({
checkboxes: {
checkChildren: true
},
dataSource: [
{ text: "foo", expanded: true, items: [
{ text: "bar" },
{ text: "baz" },
{ text: "qux" }
] }
]
});
$(":checkbox").filter(function() {
var text = $(this).parent().next().text();
return text != "bar" && text != "foo";
}).prop("checked", true);
var treeview = $("#treeview").data("kendoTreeView");
treeview.updateIndeterminate();
</script>