程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> extjs-新人求救!Extjs5tree菜單上復選框的選中狀態

extjs-新人求救!Extjs5tree菜單上復選框的選中狀態

編輯:編程綜合問答
新人求救!Extjs5tree菜單上復選框的選中狀態
tree.on('checkchange', function checkchange(node, checked) {
    if (checked) {
        checkParentNode(node.parentNode, checked);
    }
    checkChildNode(node, checked);
});

function checkChildNode(node, checked) {
    if (node == undefined) {
        return;
    }
    node.checked = checked;
    node.ui.toggleCheck(checked);//這是頁面上復選框是否被選中吧?為什麼我的在這裡報錯,我用的是extjs5,是這個原因嗎?還是其他原因?
    node.eachChild(function (child) {
        checkChildNode(child, checked);
    });
}

function checkParentNode(node, checked) {
    if (node == undefined) {
        return;
    }
    node.checked = checked;
    node.ui.toggleCheck(checked); //這裡一樣的錯誤
    checkParentNode(node.parentNode);
}

最佳回答:


checkchange事件參數node改過了,5+返回的是Ext.data.TreeModel,不是Ext.data.NodeInterface對象了

treemodel條用set更新數據源即可,有用記得采納。。

   function checkChildNode(node, checked) {
        if (!node) return;
        node.set('checked', checked);////////
        node.eachChild(function (child) {
            checkChildNode(child, checked);
        });
    }

    function checkParentNode(node, checked) {
        if (!node) return;
        node.set('checked', checked);////
        checkParentNode(node.parentNode);
    }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved