简体   繁体   中英

how to get the child names when i select the parent in the tree view

I am using kendoUI tree view with check boxes implementation. I am able to check all children's check boxes,when i select the parent checkbox. now,I want to get all the children's text values when i select the parent check box. I used template for check box operation in tree view

$("#ProjectUsersTreeView [type=checkbox]").live('change', function (e) {                       var chkbox = $(this);
                        var parent = chkbox.parent();                            
    var pBox = $(parent).closest('.k-item').find(":checkbox");                               

                       if (this.checked || pBox.length>0) {
                           $(pBox).prop('checked',this.checked ? "checked": "")      
}

Instead of using your code for checking children I do recommend using KendoUI configuration option checkChildren.

tree = $("#ProjectUsersTreeView").kendoTreeView({
            checkboxes:{
                checkChildren: true
            },
            ...
        }).data("kendoTreeView");

Then for getting all selected text use:

$("#ProjectUsersTreeView [type=checkbox]").live('change', function (e) {
            var checked = $("input:checked", tree);
            $.each(checked, function(idx, elem) {
                console.log("text", tree.text(elem));
            })
        });

In checked I get all input elements from the tree that are actually checked and display its text on console by getting it using text method.

NOTE : Realize that I've defined tree as $("#ProjectUsersTreeView").data("kendoTreeView") and then use it in change handler.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM