$.fn.treegrid.defaults.loadFilter = function (data, parentId) { var opt = $(this).data().treegrid.options; var idFiled, parentField; if (opt.parentField) { idFiled = opt.idField; parentField = opt.parentField; var i, l, treeData = [], tmpMap = []; for (i = 0, l = data.length; i < l; i++) { tmpMap[data[idFiled]] = data; } for (i = 0, l = data.length; i < l; i++) { if (tmpMap[data[parentField]] && data[idFiled] != data[parentField]) { if (!tmpMap[data[parentField]]['children']) tmpMap[data[parentField]]['children'] = []; tmpMap[data[parentField]]['children'].push(data); } else { treeData.push(data); } } return treeData; } return data; };
?使用方法,放到公共的JS文件里面。在配置TREE或者TREEGRID的时候,如下三个属性必备:
? ?? ?? ?? ?idField: 'tp_id',//子菜单字段名
? ?? ?? ?? ?treeField: 'tp_name',//显示的字段名
? ?? ?? ?? ?parentField: 'tp_parent',//父菜单字段名
其它的直接参照文档配置就OK了。