var authority = '';
$('#Tree').tree({
checkbox: true,
animate: true,
cache: false,
url: 'xxxx',
onBeforeExpand: function () {
var array = authority.split(',');
for (var i = 0; i < array.length; i++) {
var node = $('#Tree').tree('find', array[i]);
$('#Tree').tree('check', node.target);
}
}
});
collapseAll("Tree"); //传参为treeID
reload_new("Tree"); //传参为treeID
//折叠根节点
function collapseAll(treeID) {
var node = $('#' + treeID).tree('find', 0);
$('#' + treeID).tree('collapse', node.target);
}
//取消所有选中节点
function reload_new(treeID) {
var roots = $('#' + treeID).tree('getRoots'), children, i, j;
for (i = 0; i < roots.length; i++) {
$('#' + treeID).tree('uncheck', roots[i].target);
children = $('#' + treeID).tree('getChildren', roots[i].target);
for (j = 0; j < children.length; j++) {
$('#' + treeID).tree('uncheck', children[j].target);
}
}
}
<ul id="Tree"></ul>
结合Datagrid使用,修改datagrid的值。 userInfo 是datagrid的ID
var pnodes = GetNode('fnode');
var cnodes = GetNode('child');
var row = $('#userInfo').datagrid('getSelected');
var rowIndex = $('#userInfo').datagrid('getRowIndex', row.ID);
if (pnodes != "") {
$('#userInfo').datagrid('updateRow', {
index: rowIndex,
row: {
Authority: pnodes + ',' + cnodes
}
});
EasyAlert('修改成功!');
}
else {
EasyAlert('修改失败!');
}
//取得tree选择节点
function GetNode(type) {
var node = $('#tree').tree('getChecked');
var cnodes = '';
var pnodes = '';
var prevNode = -1; //保存上一步所选父节点
for (var i = 0; i < node.length; i++) {
if ($('#tree').tree('isLeaf', node[i].target)) {
cnodes += node[i].id + ',';
var pnode = $('#tree').tree('getParent', node[i].target); //获取当前节点的父节点
if (prevNode != pnode.id) //保证当前父节点与上一次父节点不同
{
pnodes += pnode.id + ',';
prevNode = pnode.id; //保存当前节点
}
}
}
cnodes = cnodes.substring(0, cnodes.length - 1);
pnodes = pnodes.substring(0, pnodes.length - 1);
if (type == 'child') { return cnodes; }
else { return pnodes };
};
更多Tree使用方法: http://blog.csdn.net/l277759183/article/details/6072797(转)