在springmvc+spring+mybatis里整合ztree实现增删改查,上一篇已经写了demo,下面就只贴出各层实现功能的代码:
Jsp页面实现功能的js代码如下:
<script>
//用于捕获分类编辑按钮的 click 事件,并且根据返回值确定是否允许进入名称编辑状态
function beforeEditName(treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
zTree.selectNode(treeNode);
return true;
}
//移除分类前执行
function beforeRemove(treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
zTree.selectNode(treeNode);
var confirmFlag = confirm("确认删除分类[ " + treeNode.name + " ]吗?" )
var confirmVal = false;
if(confirmFlag){
var data = {id:treeNode.id};
$.ajax({
async: false,
type: "post",
data:data,
url: "<%=request.getContextPath() %>/library/deleteLibrary/ ",
success: function(json){
if(json == "success" ){
confirmVal = true;
} else{
alert('亲,删除失败!');
}
},
error: function(){
alert('亲,删除失败!');
}
});
}
return confirmVal;
}
//执行删除操作后提示
function onRemove(e, treeId, treeNode) {
alert('亲,删除成功!');
}
//用于捕获分类编辑名称结束(Input 失去焦点 或 按下 Enter 键)之后,更新分类名称数据之前的事件回调函数
function beforeRename(treeId, treeNode, newName) {
if (newName.length == 0 || newName.indexOf("请输入名称")>=0) {
alert('亲,请输入分类名称!');
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
setTimeout( function(){zTree.editName(treeNode)}, 10);
return false;
}
if(newName.length > 15){
alert('亲,分类名称过长!');
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
setTimeout( function(){zTree.editName(treeNode)}, 10);
return false;
}
native_name = treeNode.name;
return true;
}
//执行编辑操作
function onRename(e, treeId, treeNode) {
if(native_name == treeNode.name){
return;
}
var data = {id:treeNode.id,level_id:treeNode.level,pid:treeNode.pId,name:treeNode.name};
$.ajax({
async: false,
type: "post",
data:data,
url: "<%=request.getContextPath() %>/library/updateLibraryName/ ",
success : function(json){
if(json == "success" ){
alert('操作成功!');
} else{
alert('亲,操作失败,请稍后再试!');
}
},
error : function() {
alert('亲,网络有点不给力呀!');
}
});
}
//添加子分类
function addHoverDom(treeId, treeNode) {
var sObj = $("#" + treeNode.tId + "_span");
if (treeNode.editNameFlag || $("#addBtn_" +treeNode.tId).length>0 || treeNode.level == 3) return;
var addStr = "<span class='button add' id='addBtn_" + treeNode.tId + "' title='