level 1
善人水
楼主
function initStMenu(outputData) {
var setting = {
view :
{nameIsHTML : true,
fontCss : getFont,
addDiyDom : adddiyDom,
addHoverDom : null,
removeHoverDom : null
},
data : {
key :{
name : "MENU_NAME",
title : "MENU_NAME",
IS_MERGE : "IS_MERGE",
W_TYPE : "W_TYPE",
ORDER_POS : "ORDER_POS"
},
simpleData : {
enable : true,
idKey : "PROJECT_MENU_ID",
pIdKey : "PARENT_MENU_ID",
rootPId : null
}
},
check : {
enable : true
},
callback : {
onClick : onTableClick,
onCheck : zTreeOnCheck}
};
ztree = $.fn.zTree.init($("#formTreeDiv"), setting, outputData.SortTree);
ztree.refresh();
if (start) {
start = false;
add_merge_recover(listNode);
}
if (is_expand) {
is_expand = false;
add_merge_recover(outputResult);
}
if (is_recover) {
is_recover = false;
add_merge_recover(recoverResult);
}
if (isSave) {
isSave = false;
add_merge_recover(saveResult);
}
}
各位大侠这就是我生成树的js代码,outputData.SortTree这个是从后台获得的树数据,add_merge_recover方法就是比如新增叶子数据,就会展开到那个新增的叶子上然后变色。

树结构就像这样,我点新增按钮,然后就会在后台增加数据,接着再调用initStMenu方法来重新从后台获得树的数据,但这样却会出问题,接着做删除操作,或者再增加就会报错,错的代码是jquery.ztree.all-3.1.js中的一个错误
addHoverDom: function(setting, node) {if (data.getRoot(setting).showHoverDom) {node.isHover = true;if (setting.edit.enable) {view.addEditBtn(setting, node);view.addRemoveBtn(setting, node);}tools.apply(setting.view.addHoverDom, [setting.treeId, node]);}}
node.isHover = true报这一行为空或不是对象,这到底是为什么啊,很纠结,上面在生成树的时候addHoverDom:null不是设置了吗,怎么还会跳这里
2012年08月13日 03点08分
1
var setting = {
view :
{nameIsHTML : true,
fontCss : getFont,
addDiyDom : adddiyDom,
addHoverDom : null,
removeHoverDom : null
},
data : {
key :{
name : "MENU_NAME",
title : "MENU_NAME",
IS_MERGE : "IS_MERGE",
W_TYPE : "W_TYPE",
ORDER_POS : "ORDER_POS"
},
simpleData : {
enable : true,
idKey : "PROJECT_MENU_ID",
pIdKey : "PARENT_MENU_ID",
rootPId : null
}
},
check : {
enable : true
},
callback : {
onClick : onTableClick,
onCheck : zTreeOnCheck}
};
ztree = $.fn.zTree.init($("#formTreeDiv"), setting, outputData.SortTree);
ztree.refresh();
if (start) {
start = false;
add_merge_recover(listNode);
}
if (is_expand) {
is_expand = false;
add_merge_recover(outputResult);
}
if (is_recover) {
is_recover = false;
add_merge_recover(recoverResult);
}
if (isSave) {
isSave = false;
add_merge_recover(saveResult);
}
}
各位大侠这就是我生成树的js代码,outputData.SortTree这个是从后台获得的树数据,add_merge_recover方法就是比如新增叶子数据,就会展开到那个新增的叶子上然后变色。

树结构就像这样,我点新增按钮,然后就会在后台增加数据,接着再调用initStMenu方法来重新从后台获得树的数据,但这样却会出问题,接着做删除操作,或者再增加就会报错,错的代码是jquery.ztree.all-3.1.js中的一个错误addHoverDom: function(setting, node) {if (data.getRoot(setting).showHoverDom) {node.isHover = true;if (setting.edit.enable) {view.addEditBtn(setting, node);view.addRemoveBtn(setting, node);}tools.apply(setting.view.addHoverDom, [setting.treeId, node]);}}
node.isHover = true报这一行为空或不是对象,这到底是为什么啊,很纠结,上面在生成树的时候addHoverDom:null不是设置了吗,怎么还会跳这里