ztree树调整,修改和删除节点的图标一直显示在节点后
This commit is contained in:
@@ -17,22 +17,21 @@
|
|||||||
addHoverDom: addHoverDom,
|
addHoverDom: addHoverDom,
|
||||||
removeHoverDom: removeHoverDom,
|
removeHoverDom: removeHoverDom,
|
||||||
selectedMulti:false,
|
selectedMulti:false,
|
||||||
dblClickExpand:false
|
dblClickExpand:false,
|
||||||
|
addDiyDom:addDiyDom
|
||||||
},
|
},
|
||||||
edit: {
|
edit: {
|
||||||
enable: true,
|
enable: true,
|
||||||
showRemoveBtn: showRemoveBtn,
|
showRemoveBtn: false,
|
||||||
showRenameBtn: showRenameBtn,
|
showRenameBtn: false
|
||||||
removeTitle: "remove",
|
|
||||||
renameTitle: "rename",
|
|
||||||
},
|
},
|
||||||
check:{enable:"${checked}",chkboxType: { "Y" : "${checkedPS}", "N" : "${unCheckedPS}" },nocheckInherit:true},
|
check:{enable:"${checked}",chkboxType: { "Y" : "${checkedPS}", "N" : "${unCheckedPS}" },nocheckInherit:true},
|
||||||
async:{enable:(type==6),url:"${ctx}/sys/user/treeData",autoParam:["id=officeId"]},
|
async:{enable:(type==6),url:"${ctx}/sys/user/treeData",autoParam:["id=officeId"]},
|
||||||
data:{simpleData:{enable:true}},
|
data:{simpleData:{enable:true}},
|
||||||
callback:{
|
callback:{
|
||||||
beforeEditName:beforeEditName,
|
beforeEditName:false,
|
||||||
beforeRename:beforeRename,
|
beforeRename:beforeRename,
|
||||||
beforeRemove:beforeRemove,
|
beforeRemove:false,
|
||||||
//beforeClick: function(treeId, treeNode){
|
//beforeClick: function(treeId, treeNode){
|
||||||
//if("${checked}" == "true"){
|
//if("${checked}" == "true"){
|
||||||
//tree.checkNode(treeNode, !node.checked, true, true);
|
//tree.checkNode(treeNode, !node.checked, true, true);
|
||||||
@@ -59,7 +58,7 @@
|
|||||||
//$("input[type='text']", top.mainFrame.document).focus();//</c:if>
|
//$("input[type='text']", top.mainFrame.document).focus();//</c:if>
|
||||||
},
|
},
|
||||||
onRename:onRename,
|
onRename:onRename,
|
||||||
onRemove:onRemove
|
onRemove:false
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
function expandNodes(nodes) {
|
function expandNodes(nodes) {
|
||||||
@@ -99,11 +98,25 @@
|
|||||||
tree.updateNode(nodes[i],false);
|
tree.updateNode(nodes[i],false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* if(nodes[i].user&&nodes[i].user=="${userId}"){
|
||||||
|
nodes[i].icon="${pageContext.request.contextPath}/static/global/plugins/jquery-ztree/3.5.12/css/zTreeStyle/img/diy/5.png";
|
||||||
|
tree.updateNode(nodes[i],false);
|
||||||
|
} */
|
||||||
}
|
}
|
||||||
nodes=tree.getNodesByParam("level", 0);
|
nodes=tree.getNodesByParam("level", 0);
|
||||||
for(var i=0; i<nodes.length; i++) {
|
for(var i=0; i<nodes.length; i++) {
|
||||||
tree.expandNode(nodes[i], true, false, false);
|
tree.expandNode(nodes[i], true, false, false);
|
||||||
}
|
}
|
||||||
|
//更换用户自己添加的节点的图标
|
||||||
|
/* if("${enableAddBtn}"&&"${enableAddBtn}"=="true"){
|
||||||
|
nodes=tree.getNodesByParam("level", 2);
|
||||||
|
for(var i=0; i<nodes.length; i++) {
|
||||||
|
if(nodes[i].user&&nodes[i].user=="${userId}"){
|
||||||
|
nodes[i].icon="${pageContext.request.contextPath}/static/global/plugins/jquery-ztree/3.5.12/css/zTreeStyle/img/diy/5.png";
|
||||||
|
tree.updateNode(nodes[i],false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} */
|
||||||
//异步加载子节点(加载用户)
|
//异步加载子节点(加载用户)
|
||||||
var nodesOne = tree.getNodesByParam("isParent", true);
|
var nodesOne = tree.getNodesByParam("isParent", true);
|
||||||
for(var j=0; j<nodesOne.length; j++) {
|
for(var j=0; j<nodesOne.length; j++) {
|
||||||
@@ -123,7 +136,7 @@
|
|||||||
for(var i=0; i<ids.length; i++) {
|
for(var i=0; i<ids.length; i++) {
|
||||||
var node = tree.getNodeByParam("id", (type==3?"u_":"")+ids[i]);
|
var node = tree.getNodeByParam("id", (type==3?"u_":"")+ids[i]);
|
||||||
//如果节点id与排除id相同,不被选中
|
//如果节点id与排除id相同,不被选中
|
||||||
if(node.id!=parseInt("${extId}")){
|
if(node&&node.id!=parseInt("${extId}")){
|
||||||
if("${checked}" == "true"){
|
if("${checked}" == "true"){
|
||||||
try{tree.checkNode(node, true, true);}catch(e){}
|
try{tree.checkNode(node, true, true);}catch(e){}
|
||||||
tree.selectNode(node, false);
|
tree.selectNode(node, false);
|
||||||
@@ -229,11 +242,11 @@
|
|||||||
//$("#txt").toggle();
|
//$("#txt").toggle();
|
||||||
$("#key").focus();
|
$("#key").focus();
|
||||||
}
|
}
|
||||||
function beforeEditName(treeId, treeNode) {
|
/* function beforeEditName(treeId, treeNode) {
|
||||||
var zTree = $.fn.zTree.getZTreeObj("tree");
|
var zTree = $.fn.zTree.getZTreeObj("tree");
|
||||||
zTree.selectNode(treeNode);
|
zTree.selectNode(treeNode);
|
||||||
return confirm("<spring:message code='edit' />" + treeNode.name + "?");
|
return confirm("<spring:message code='edit' />" + treeNode.name + "?");
|
||||||
}
|
} */
|
||||||
function beforeRename(treeId, treeNode, newName) {
|
function beforeRename(treeId, treeNode, newName) {
|
||||||
var zTree = $.fn.zTree.getZTreeObj("tree");
|
var zTree = $.fn.zTree.getZTreeObj("tree");
|
||||||
if (newName.length == 0) {
|
if (newName.length == 0) {
|
||||||
@@ -244,9 +257,9 @@
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
function beforeRemove(treeId, treeNode, newName) {
|
/* function beforeRemove(treeId, treeNode) {
|
||||||
return confirm("<spring:message code='remove' /> " + treeNode.name + "?");
|
return confirm("<spring:message code='remove' /> " + treeNode.name + "?");
|
||||||
}
|
} */
|
||||||
//在重命名节点时,调用后台存储,将返回结果更新
|
//在重命名节点时,调用后台存储,将返回结果更新
|
||||||
function onRename(e, treeId, treeNode) {
|
function onRename(e, treeId, treeNode) {
|
||||||
loading("<spring:message code='loading' />...");
|
loading("<spring:message code='loading' />...");
|
||||||
@@ -274,14 +287,20 @@
|
|||||||
var zTree = $.fn.zTree.getZTreeObj("tree");
|
var zTree = $.fn.zTree.getZTreeObj("tree");
|
||||||
zTree.updateNode(treeNode);
|
zTree.updateNode(treeNode);
|
||||||
closeTip();
|
closeTip();
|
||||||
|
},
|
||||||
|
complete:function(XMLHttpRequest,status){//发生异常,关闭遮罩层
|
||||||
|
if(status !="success"){
|
||||||
|
closeTip();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
function onRemove(e, treeId, treeNode) {
|
/* function onRemove(e, treeId, treeNode) {
|
||||||
loading("<spring:message code='loading' />...");
|
loading("<spring:message code='loading' />...");
|
||||||
if(typeof treeNode=="string"){
|
if(typeof treeNode=="string"){
|
||||||
var zTree = $.fn.zTree.getZTreeObj("tree");
|
var zTree = $.fn.zTree.getZTreeObj("tree");
|
||||||
zTree.removeNode(treeNode,true);
|
zTree.removeNode(treeNode,false);
|
||||||
|
closeTip();
|
||||||
}else{
|
}else{
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type:'post',
|
type:'post',
|
||||||
@@ -296,16 +315,24 @@
|
|||||||
success:function(data){
|
success:function(data){
|
||||||
if(data){
|
if(data){
|
||||||
var zTree = $.fn.zTree.getZTreeObj("tree");
|
var zTree = $.fn.zTree.getZTreeObj("tree");
|
||||||
zTree.removeNode(treeNode,false);
|
var pId=treeNode.parentTId;
|
||||||
|
try{zTree.removeNode(treeNode,false);}catch(e){}
|
||||||
|
var node = tree.getNodeByTId(pId);
|
||||||
|
if(node){
|
||||||
|
if(!node.isParent){//强制改变没有子节点的特定服务业务类型为父节点,让其改变样式
|
||||||
|
node.isParent=true;
|
||||||
|
tree.updateNode(node,false);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
closeTip();
|
closeTip();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
} */
|
||||||
//用户只能rename自己添加的节点
|
//用户只能rename自己添加的节点
|
||||||
function showRenameBtn(treeId, treeNode) {
|
/* function showRenameBtn(treeId, treeNode) {
|
||||||
if(treeNode.isParent){
|
if(treeNode.isParent){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -314,9 +341,9 @@
|
|||||||
}else{
|
}else{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
} */
|
||||||
//用户只能remove自己添加的节点
|
//用户只能remove自己添加的节点
|
||||||
function showRemoveBtn(treeId, treeNode) {
|
/* function showRemoveBtn(treeId, treeNode) {
|
||||||
if(treeNode.isParent){
|
if(treeNode.isParent){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -325,44 +352,123 @@
|
|||||||
}else{
|
}else{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
} */
|
||||||
//只有在配置了enableAddBtn的界面上才会显示添加按钮
|
//只有在配置了enableAddBtn的界面上才会显示添加按钮
|
||||||
function addHoverDom(treeId, treeNode) {
|
function addHoverDom(treeId, treeNode) {
|
||||||
//开启节点增加
|
//开启节点增加
|
||||||
if("${enableAddBtn}"&&"${enableAddBtn}"=="true"){
|
if("${enableAddBtn}"&&"${enableAddBtn}"=="true"){
|
||||||
//根节点不需要增加节点
|
if(treeNode.isParent){
|
||||||
if(treeNode.pId==null||(treeNode.businessType&&treeNode.businessType!=-1)){
|
//根节点不需要增加节点
|
||||||
return;
|
if(treeNode.pId==null||(treeNode.businessType&&treeNode.businessType!=-1)){
|
||||||
}
|
return;
|
||||||
var sObj = $("#" + treeNode.tId + "_span");
|
}
|
||||||
if (treeNode.editNameFlag || $("#addBtn_"+treeNode.id).length>0) return;
|
var sObj = $("#" + treeNode.tId + "_span");
|
||||||
var title="<spring:message code='add' /> <spring:message code='${title}' />";
|
if (treeNode.editNameFlag || $("#addBtn_"+treeNode.id).length>0) return;
|
||||||
var addStr = "<span class='button add' id='addBtn_" + treeNode.id
|
var title="<spring:message code='add' /> <spring:message code='${title}' />";
|
||||||
+ "' title='"+title+"' onfocus='this.blur();'></span>";
|
var addStr = "<span class='button add' id='addBtn_" + treeNode.id
|
||||||
sObj.after(addStr);
|
+ "' title='"+title+"' onfocus='this.blur();'></span>";
|
||||||
var btn = $("#addBtn_"+treeNode.id);
|
sObj.after(addStr);
|
||||||
if (btn){
|
var btn = $("#addBtn_"+treeNode.id);
|
||||||
btn.bind("click", function(){
|
if (btn){
|
||||||
//区别人工添加,在ID前加上manual
|
btn.bind("click", function(){
|
||||||
var id="manual"+new Date().getTime();
|
//区别人工添加,在ID前加上manual
|
||||||
var zTree = $.fn.zTree.getZTreeObj("tree"); //addSelectedNode
|
var id="manual"+new Date().getTime();
|
||||||
zTree.addNodes(treeNode, {id:id, pId:treeNode.id, name:"<spring:message code='new' /> <spring:message code='${title}' />",
|
var zTree = $.fn.zTree.getZTreeObj("tree"); //addSelectedNode
|
||||||
businessType:treeNode.id.replace("businessType",""),user:"${userId}",serviceType:treeNode.serviceType,groupId:"",
|
zTree.addNodes(treeNode, {id:id, pId:treeNode.id,parentTId:treeNode.tId, name:"<spring:message code='new' /> <spring:message code='${title}' />",
|
||||||
serviceCode:""});
|
businessType:treeNode.id.replace("businessType",""),user:"${userId}",serviceType:treeNode.serviceType,groupId:"",
|
||||||
var node = zTree.getNodeByParam("id", id,treeNode);
|
serviceCode:""});
|
||||||
if(node){
|
var node = zTree.getNodeByParam("id", id,treeNode);
|
||||||
zTree.updateNode(node);
|
if(node){
|
||||||
zTree.editName(node);
|
zTree.updateNode(node);
|
||||||
}
|
zTree.editName(node);
|
||||||
|
}
|
||||||
return false;
|
return;
|
||||||
});
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
function removeHoverDom(treeId, treeNode) {
|
function removeHoverDom(treeId, treeNode) {
|
||||||
$("#addBtn_"+treeNode.id).unbind().remove();
|
if("${enableAddBtn}"&&"${enableAddBtn}"=="true"){
|
||||||
|
if(treeNode.isParent){
|
||||||
|
$("#addBtn_"+treeNode.id).unbind().remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
function addDiyDom(treeId, treeNode){
|
||||||
|
if (treeNode.parentNode) return;
|
||||||
|
if("${enableAddBtn}"&&"${enableAddBtn}"=="true"&&treeNode.user&&treeNode.user=="${userId}"){
|
||||||
|
if(treeNode.tId){
|
||||||
|
var aBtn=$("#"+treeNode.tId+"_a");
|
||||||
|
var editStr = "<span class='btn edit' id='" +treeNode.tId+ "_editBtn' title='"+"<spring:message code='edit'/>"+"' treenode_edit'><span class='button edit'></span></span>";
|
||||||
|
var removeStr = "<span class='btn remove' id='" +treeNode.tId+ "_removeBtn' title='"+"<spring:message code='remove'/>"+"' treenode_remove'><span class='button remove'></span></span>";
|
||||||
|
aBtn.append(editStr);
|
||||||
|
aBtn.append(removeStr);
|
||||||
|
//添加重命名按钮绑定事件
|
||||||
|
var editBtn = $("#"+treeNode.tId+"_editBtn");
|
||||||
|
if(editBtn){
|
||||||
|
editBtn.bind("click", function(){
|
||||||
|
var zTree = $.fn.zTree.getZTreeObj("tree");
|
||||||
|
//替代beforeEditName
|
||||||
|
if(confirm("<spring:message code='edit' />" + treeNode.name + "?")){
|
||||||
|
zTree.editName(treeNode);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//添加移除按钮绑定事件
|
||||||
|
var removeBtn = $("#"+treeNode.tId+"_removeBtn");
|
||||||
|
if(removeBtn){
|
||||||
|
removeBtn.bind("click", function(){
|
||||||
|
var zTree = $.fn.zTree.getZTreeObj("tree");
|
||||||
|
var pId=treeNode.parentTId;
|
||||||
|
//替代beforeRemoveName
|
||||||
|
if(confirm("<spring:message code='remove' /> " + treeNode.name + "?")){
|
||||||
|
loading("<spring:message code='loading' />...");
|
||||||
|
if(typeof treeNode=="string"){
|
||||||
|
zTree.removeNode(treeNode,false);
|
||||||
|
var node = tree.getNodeByTId(pId);
|
||||||
|
if(node){
|
||||||
|
if(!node.isParent){//强制改变没有子节点的特定服务业务类型为父节点,让其改变样式
|
||||||
|
node.isParent=true;
|
||||||
|
tree.updateNode(node,false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
closeTip();
|
||||||
|
}else{
|
||||||
|
$.ajax({
|
||||||
|
type:'post',
|
||||||
|
async:true,
|
||||||
|
cache:false,
|
||||||
|
url:'${ctx}/specific/specificServiceCfg/ajaxRemoveApp',
|
||||||
|
data:{
|
||||||
|
"specServiceId":treeNode.id
|
||||||
|
},
|
||||||
|
//dataType:"json",
|
||||||
|
//contentType:"application/json; charset=utf-8",
|
||||||
|
success:function(data){
|
||||||
|
if(data){
|
||||||
|
zTree.removeNode(treeNode,false);
|
||||||
|
//修复父节点下没有子节点的时候其图标变成非文件夹
|
||||||
|
var node = tree.getNodeByTId(pId);
|
||||||
|
if(node){
|
||||||
|
if(!node.isParent){
|
||||||
|
node.isParent=true;
|
||||||
|
tree.updateNode(node,false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
closeTip();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
Reference in New Issue
Block a user