setting.callback.beforeCheck
概述[ 依赖 jquery.ztree.excheck 扩展 js ]用于捕获 勾选 或 取消勾选 之前的事件回调函数,并且根据返回值确定是否允许 勾选 或 取消勾选默认值:null
Function 参数说明
treeIdString
对应 zTree 的 treeId,便于用户操控
treeNodeJSON
进行 勾选 或 取消勾选 的节点 JSON 数据对象
返回值Boolean
返回值是 true / false
如果返回 false,将不会改变勾选状态,并且无法触发 onCheck 事件回调函数=======================================所以你的答案是:
var setting = {
view: {
selectedMulti: false
},
check: {
enable: true
},
data: {
//........
},
callback: {
beforeCheck: function(treeId, treeNode) {
return !treeNode.isParent;//或 return !treeNode.children;
}

}
};

解决方案 »

  1.   

    楼主都不知道看API的?。。zTreeObj.getCheckedNodes
    概述[ 依赖 jquery.ztree.excheck 扩展 js ]获取输入框被勾选 或 未勾选的节点集合。[setting.check.enable = true 时有效]请通过 zTree 对象执行此方法。
    Function 参数说明
    checkedBooleanchecked = true 表示获取 被勾选 的节点集合checked = false 表示获取 未勾选 的节点集合省略此参数,等同于 true。对于 treeNode.nochecked = true 的节点不进行获取。
    返回值Array(JSON)返回全部符合要求的节点集合 Array
    function 举例
    1. 获取当前被勾选的节点集合var treeObj = $.fn.zTree.getZTreeObj("tree");
    var nodes = treeObj.getCheckedNodes(true);
      

  2.   


    说这个api 我当然看了但是看的确实看不懂 你说那个方法是获得全部勾选节点。
    大哥当我勾选子节点父节点 也会被勾选上,而我此时只想获得 子节点选中值,不想获得父节点勾选选中值,
      

  3.   

    var treeObj=$.fn.zTree.getZTreeObj("fltree"),
             //  nodes=treeObj.getCheckedNodes(true),
    这么获取 还是连带父节点 id都获得到了
      

  4.   

    ....
    var nodes=$.fn.zTree.getZTreeObj("treeDemo").getCheckedNodes(true);
    for(var i=0;i<nodes.length;i++)
    if(!nodes[i].children)alert(nodes[i].name)