1

我使用 Telerik kendo-tree-view 显示弹出窗口,其中所有父节点都在那里作为复选框。所以当我应该检查父节点时,它应该自动展开并检查所有子节点。但没有发生这样的问题,问题只是第一次从第二次开始工作正常。

当我第一次检查父节点时,它会展开并具有所有子节点但未检查。请参阅 Html 部分下面的代码:

<div class="col-md-10  col-sm-10 remove-padding" id="parent">
                    <div style="height: 300px;overflow-y: auto;border:1px solid black" id="adminTreeView" kendo-tree-view="tree"
                         k-data-source="rc.adminTreeData"
                         k-options="rc.adminTreeOptions" tabindex="3">
                    </div>

            </div>

角部分:

rc.adminTreeOptions = {
            dataTextField: 'DisplayName',
            checkboxes: {
                checkParent:true,
                checkChildren: true
            },
            check: onCheck,
        };

    rc.GetResourcePermission = function (roleId) {
                rc.adminTreeData = new kendo.data.HierarchicalDataSource({
                    transport: {
                        read: function (e) {
                            var id = e.data.Id || 0;
                            roleService.getHierarchyResourceByParentId(id, roleId, (rc.SelectedClient == '' ? null : rc.SelectedClient), CurrentAppId).then(function (response) {
                                e.success(response);
                            });
                        }
                    },
                    schema: {
                        model: {
                            id: "Id",
                            hasChildren: "HasChild"
                        },
                        parse: function (response) {
                            return $.map(response, function (x) {
                                x.checked = x.Checked;
                                return x;
                            });
                        }
                    },
                    requestEnd: function () {
                        if (roleId != 0) {
                        if (angular.element("#adminTreeView").data("kendoTreeView") && angular.element("#adminTreeView").data("kendoTreeView").expand) {
                                angular.element("#adminTreeView").data("kendoTreeView").expand(".k-item");
                            }
                        }
                    },
                });
            }
4

0 回答 0