menu主界面效果图如下
中间的树形菜单使用了基于JQuery的jsTree
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> <?php require '../connect.php'; ?> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>管理中心</title> <style type="text/css"> <!-- body { margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; font-size: 12px; } --> </style> <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="js/jquery.jstree.js"></script> <script type="text/javascript" class="source"> $(function() { $("#create_1").click(function() { $("#demo1").jstree("create"); }); $("#create_2").click( function() { $("#demo1").jstree("create", "#phtml_1", "first", "Enter a new name"); }); $("#demo1").jstree({ "ui": { //"initially_select": ["phtml_2"] //默认选中的项 }, "crrm": { "input_width_limit": 50 }, "themes": { "theme": "classic", "dots": true, "icons": true }, "core": { //"initially_open": ["phtml_1", "phtml_4"] }, //默认展开的项 "plugins": ["themes", "html_data", "ui", "crrm", "contextmenu"], "contextmenu": { "items": { "create": { "label": "新增", "action": function(obj) { //alert($(obj).attr("leaf")); var aaa = $(obj).attr("leaf"); // alert($(obj).children().length); //alert($(obj).children().eq(1).text()); if ($.trim($(obj).children().eq(1).text()) == "保护巡检台账" || $.trim($(obj).children().eq(1).text()) == "运行注意事项" || $.trim($(obj).children().eq(1).text()) == "维护记录") { alert("此处不可添加子菜单"); return; } //alert(aaa); if (aaa == 5) {//第五级不可以再添加子级 alert("不允许再此处添加子级"); return; //alert(12); } else if (aaa == 2) { //alert($(obj).parent().parent().children().eq(1).text()); //取到上一级的名字 var p_name = $(obj).parent().parent().children().eq(1).text(); p_name = $.trim(p_name); //alert(p_name); if (p_name.indexOf("变电站") >= 0) { //alert("上一级的名字不包含变电站"); //自动添加18项菜单 if ($(obj).children().length != 2) { alert("存在子节点,请先删除子节点后再添加"); return; } if(p_name.indexOf("220") >= 0){ var names = new Array("线路保护", "旁路保护", "母线保护", "失灵保护", "变压器保护", "母联及分段开关保护", "所变保护", "电容器保护", "稳定装置", "故障录波器", "低周减载装置", "备用电源自动投入装置", "辅助保护", "故障信息子站", "保护巡检台账", "运行注意事项", "维护记录", "综自台账"); }else{ var names = new Array("线路保护", "旁路保护", "母线保护"/*, "失灵保护"*/, "变压器保护", "母联及分段开关保护", "所变保护", "电容器保护",/* "稳定装置",*/ "故障录波器", "低周减载装置", "备用电源自动投入装置", "辅助保护", /*"故障信息子站",*/ "保护巡检台账", "运行注意事项", "维护记录", "综自台账"); } //var args = {"time": new Date(), "p_id": p_id, "name": name, "leaf_id": leaf_id}; //alert(p_id + " "); var name_all = ""; for (var i = 0; i < names.length; i++) { name_all += (names[i] + ","); //create事件会出发后面的create方法 var o = this.create(obj, 'last', { attr: { ntype: 'leaf', //叶子节点 bbb: '123456'//test }, data: names[i] }); $(o).attr("flag", "piliang18");//批量生成18项菜单需要特殊处理 } //alert("已自动添加15项子菜单"); // alert(name_all); var url = "piliang18_add.php"; var p_id = $(obj).attr("n_id"); var leaf_id = $(obj).attr("leaf"); var args = {"time": new Date(), "p_id": p_id, "name": name_all, "leaf_id": leaf_id, "pageUrl": "#"}; $.ajax({ type: "GET", url: url, dataType: "json", data: args, success: function(msg) { if (msg.error) { alert(msg.error); window.location.reload();//刷新页面 } else if (msg.success) { window.location.reload();//刷新页面 } //window.location.reload();//刷新页面 }}); // window.location.reload();//刷新页面 return; } else { //alert("上一级的名字不包含变电站"); } } else if (aaa == 3) { // alert(3); var this_name = $(obj).children().eq(1).text(); // alert(this_name); if ($.trim(this_name) == "综自台账") { // alert(this_name); var names = new Array("综自报告", "综自台账", "综自数据备份", "综自维护记录"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); //给生成的节点加上页面链接地址 if (i == 0) { $(o).attr("page", "input/sub_zzbgupload.php"); } else if (i == 1) { $(o).attr("page", "input/sub_zztzupload.php"); } else if (i == 2) { $(o).attr("page", "input/sub_zzsjbfupload.php"); } else if (i == 3) { $(o).attr("page", "input/sub_zzwhjl_list.php"); } } return;//如果是综自台账,则不在下面生成“名称”一项 } } else if (aaa == 4) {//第4级,上级是“线路保护” if ($(obj).children().length != 2) { alert("存在子节点,请先删除子节点后再添加"); return; } var p_name = $(obj).parent().parent().children().eq(1).text(); p_name = $.trim(p_name); //alert(p_name); if (p_name == "线路保护") { var n_name = $(obj).children().eq(1).text(); n_name = $.trim(n_name); if (n_name.indexOf("220") >= 0) { var names = new Array("图纸", "说明书", "第一套保护台账", "第二套保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { //create事件会出发后面的create方法 //"第一套保护台账", "第二套保护台账" 对应的是input/xianlubaohu1.php页面 if (i == 2 || i == 3) { //o是新生成的那个节点 var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 //page:'input/xianlubaohu1.php' }, data: names[i] }); //给生成的节点加上页面链接地址 $(o).attr("page", "input/xianlubaohu1.php"); continue; } //o是新生成的那个节点 var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); //给生成的节点加上页面链接地址 $(o).attr("page", "input/upload.php"); } return; } else { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { //create事件会出发后面的create方法 if (i == 2) { //o是新生成的那个节点 var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); //给生成的节点加上页面链接地址 $(o).attr("page", "input/xianlubaohu2.php"); continue; } //o是新生成的那个节点 var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); //给生成的节点加上页面链接地址 $(o).attr("page", "input/upload.php"); } return; } } else if (p_name == "旁路保护") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { //给生成的节点加上页面链接地址 $(o).attr("page", "input/panglubaohu1.php"); } else { //给生成的节点加上页面链接地址 $(o).attr("page", "input/upload.php"); } } return; } else if ($.trim(p_name) == "母线保护") { var n_name = $(obj).children().eq(1).text(); n_name = $.trim(n_name); if (n_name.indexOf("220") >= 0) { var names = new Array("图纸", "说明书", "第一套保护台账", "第二套保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2 || i == 3) { $(o).attr("page", "input/muxianbaohu1.php"); } else { $(o).attr("page", "input/upload.php"); } } } else { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/muxianbaohu2.php"); } else { $(o).attr("page", "input/upload.php"); } } } return; } else if (p_name == "失灵保护") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/shilingbaohu1.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "变压器保护") { var names = new Array("图纸", "说明书", "第一套保护台账", "第二套保护台账", "第三套保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2 || i == 3 || i == 4) { $(o).attr("page", "input/bianyaqibaohu1.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "母联及分段开关保护") { var n_name = $(obj).children().eq(1).text(); n_name = $.trim(n_name); if (n_name.indexOf("220") >= 0) { var names = new Array("图纸", "说明书", "第一套保护台账", "第二套保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2 || i == 3) { $(o).attr("page", "input/mulianjifenduan1.php"); } else { $(o).attr("page", "input/upload.php"); } } } else { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/mulianjifenduan2.php"); } else { $(o).attr("page", "input/upload.php"); } } } return; } else if (p_name == "稳定装置") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/wendingzhuangzhi1.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "故障录波器") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/guzhangluboqi1.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "低周减载装置") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/dizhoujianzaizhuangzhi1.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "所变保护") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/suobian_dianrongqi.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "电容器保护") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/suobian_dianrongqi.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "备用电源自动投入装置") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/beiyongdianyuanzidongtouruzhuangzhi1.php"); } else { $(o).attr("page", "input/upload.php"); } } return; } else if (p_name == "故障信息子站") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/guzhangxinxizizhan1.php"); } else { $(o).attr("page", "input/upload.php"); } } return; }else if (p_name == "辅助保护") { var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/fuzhubaohutaizhang.php"); } else { $(o).attr("page", "input/upload.php"); } } return; }/* else if(p_name == "保护巡检台账"){ var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/bhxjtzupload.php"); } else { $(o).attr("page", "input/upload.php"); } } return; }else if(p_name == "运行注意事项"){ var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/yxzzsxupload.php"); } else { $(o).attr("page", "input/upload.php"); } } return; }else if(p_name == "维护记录"){ var names = new Array("图纸", "说明书", "保护台账", "报告模板", "定值"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 2) { $(o).attr("page", "input/whjl_list.php"); } else { $(o).attr("page", "input/upload.php"); } } return; }else if(p_name == "综自台账"){ var names = new Array("综自报告", "综自台账", "综自数据备份", "综自维护记录"); for (var i = 0; i < names.length; i++) { var o = this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: names[i] }); if (i == 0) { $(o).attr("page", "input/sub_zzbgupload.php"); } else if (i == 1) { $(o).attr("page", "input/sub_zztzupload.php"); }else if (i == 2) { $(o).attr("page", "input/sub_zzsjbfupload.php"); }else if (i == 3) { $(o).attr("page", "input/sub_zzwhjl_list.php"); } } return; } */ } this.create(obj, 'last', { attr: { ntype: 'leaf'//叶子节点 }, data: '名称' }); //alert($(obj).data); } }, "rename": { "label": "重命名"/*, "action": function(obj) { var id = $(obj).attr("n_id");//当前节点的id var name = $(obj).text(); }*/ }, "remove": { "label": "删除", "action": function(obj) { if ($(obj).attr("leaf") == 1) { alert("不允许删除根节点"); return; } if (!confirm("确认删除吗?")) { return; } else { //$("#demo1").jstree("remove", obj); var n_id = $(obj).attr("n_id");//当前节点的id var url = "delete.php"; //var url = "add.php?p_id=" + p_id + "&name=" + name; var args = {"time": new Date(), "n_id": n_id}; $.ajax({ type: "GET", url: url, dataType: "json", data: args, success: function(msg) { if (msg.error) { alert(msg.error); // window.location.reload();//刷新页面 return; } //alert("删除成功"); $("#demo1").jstree("remove", obj); } }); } } }, "ccp": null/* , "add_pro": { "label": "编辑属性", "action": function(obj) { var n_id = $(obj).attr("n_id");//当前节点的id var name = $(obj).text(); var pro; var url = "getPro.php"; var args = {"time": new Date(), "n_id": n_id}; $.ajax({ type: "GET", url: url, dataType: "json", data: args, success: function(msg) { //alert(msg.url); if (msg.error) { alert(msg.error); return; } pro = prompt("请添加本项的超链接", msg.url); if (!pro && typeof (pro) != "undefined" && pro != 0) { return; } //alert(pro); $.ajax({ type: "GET", url: "updatePro.php", dataType: "json", data: {"time": new Date(), "n_id": n_id, "url": pro}, success: function(msg) { //$(obj).attr("href", msg.url); $(obj).children().eq(1).attr("href", pro); } }); } }); //alert(pro); } }*/ } } }).bind("create.jstree", function(e, data) { var nodeData = { name: data.rslt.name }; //alert(data.rslt.name) //alert($(data.rslt.obj).attr("page")); //如果对应的页面地址已经提前自动设置,就把这个pageUrl存到数据库里去 // alert($(data.rslt.obj).attr("flag")); if ($(data.rslt.obj).attr("flag")) { //批量生成18项菜单需特殊处理 return; } var pageUrl = $(data.rslt.obj).attr("page"); if (pageUrl != null) { pageUrl = $.trim(pageUrl); } else { pageUrl = "#"; } if (data.rslt.name.length > 50) { alert("名称不能大于50个字符!"); window.setTimeout(function() { $("#demo1").jstree("rename", data.rslt.obj); }, 100); return; } var leaf_id = $(data.rslt.obj).parent().parent().attr("leaf");//上一级的leaf,当前级的leaf应该加1,到服务器上再加1 var p_id = $(data.rslt.obj).parent().parent().attr("n_id");//父节点的n_id var name = data.rslt.name; //alert(name); /*此处已在piliang18_add.php中处理 if (name == "保护巡检台账") { pageUrl = "input/bhxjtzupload.php"; } else if (name == "运行注意事项") { pageUrl = "input/yxzzsxupload.php"; } else if (name == "维护记录") { pageUrl = "input/whjl_list.php"; } */ var url = "add.php"; var args = {"time": new Date(), "p_id": p_id, "name": name, "leaf_id": leaf_id, "pageUrl": pageUrl}; $.ajax({ type: "GET", url: url, dataType: "json", data: args, success: function(msg) { $(data.rslt.obj).attr("n_id", msg.id); $(data.rslt.obj).attr("leaf", msg.level); $(data.rslt.obj).children().eq(1).attr("href", msg.url); // $(data.rslt.obj).children().eq(1).attr("aaa", "12ddd"); //alert($(data.rslt.obj).children().eq(1).text());//a标签的链接文字 /* if($(data.rslt.obj).children().eq(1).text() == "线路保护"){ alert('保护巡检台账'); //$(data.rslt.obj).children().eq(1).attr('href','input/bhxjtzupload.php'); } */ //$(data.rslt.obj).children().eq(1).attr("target", "main"); //$(data.rslt.obj).children().eq(2).children() // alert(msg.name); /* if (msg.name == "保护巡检台账" || "运行注意事项" || "维护记录") { $(data.rslt.obj).children().eq(1).click(function() { $(parent.document).find("#main").attr("src", "menu/" + msg.url + "?n_id=" + msg.id); }); } */ if (msg.error) { alert(msg.error); // $("#demo1").jstree("remove", data.rslt.obj); window.location.reload();//刷新页面 } if ($.trim(msg.url) != "#") { $(data.rslt.obj).children().eq(1).click(function() { $(parent.document).find("#main").attr("src", "menu/" + msg.url + "?n_id=" + msg.id); }); } else {//如果链接是#,则点击无反应 $(data.rslt.obj).children().eq(1).click(function() { // return; }); // $(data.rslt.obj).children().eq(1).unbind("click"); } /* if (msg.level == 5) { $(data.rslt.obj).children().eq(1).click(function() { // alert("!!!!"); $(parent.document).find("#main").attr("src", "menu/" + msg.url + "?n_id=" + msg.id); }); } */ } }); }).bind("rename.jstree", function(e, data) { if (data.rslt.new_name == data.rslt.old_name) { return; } var n_id = $(data.rslt.obj).attr("n_id"); var new_name = data.rslt.new_name; var url = "update.php"; var args = {"time": new Date(), "n_id": n_id, "new_name": new_name}; $.ajax({ type: "GET", url: url, dataType: "json", data: args, success: function(msg) { // alert(msg); if (msg.error) { alert(msg.error); window.location.reload();//刷新页面 } } }); }); $("a").click(function(e) { // alert("click"); //alert("n_id:" + $(this).parent().attr('n_id') + " leaf:" + $(this).parent().attr('leaf')); //自定义点击事件 //window.location = this.href; if ($(this).parent().attr('leaf') == 5) { //alert( $(parent.document).find("#mainFrame").attr("src")); // alert("叶子"); //var frm = window.parent.window.frames['mainFrame']; //alert(frm); if ($(this).attr('href') == '#') { //alert("#"); } else { var Cts = $(this).attr('href'); if (Cts.indexOf("type") >= 0) $(parent.document).find("#main").attr("src", this.href + "?n_id=" + $(this).parent().attr("n_id")); else $(parent.document).find("#main").attr("src", this.href + "?n_id=" + $(this).parent().attr("n_id")); } return false; } var href = $(this).attr('href'); //alert(href); //alert(href == "#"); if (href == "#") { //alert("###"); //$(parent.document).find("#main").attr("src", "help.html"); return false; } //解决IE的兼容性问题 if(href.indexOf("#") > 0){ //$(parent.document).find("#main").attr("src", "help.html"); return false; } $(parent.document).find("#main").attr("src", this.href + "?n_id=" + $(this).parent().attr("n_id")); // e.preventDefault(); return false; // alert($(this).parent().attr('leaf')); }); // $(this).find("*").click(function() { // alert($(this).text); // }); /* $("li").click(function(e) { //alert($.trim($(this).text())); if ($.trim($(this).text()) == "交流平台" || $.trim($(this).text()) == "规程规范" || $.trim($(this).text()) == "作业指导书" || $.trim($(this).text()) == "三措一案" || $.trim($(this).text()) == "常用软件" || $.trim($(this).text()) == "仪器仪表台账" || $.trim($(this).text()) == "安装工器具台账" || $.trim($(this).text()) == "备品备件台账" || $.trim($(this).text()) == "保护巡检台账" ||) { //alert('jlpt'); $(parent.document).find("#main").attr("src", this.href); } // alert($(this).attr("href")); if (this.href.length == 1) { alert("#"); return false; } else { //$(parent.document).find("#main").attr("src", this.href); return false; } e.preventDefault();//取消默认行为,没有这句话的话,会跳转到baidu网站上 return false; }); */ } ); function create_node() { alert(this.leaf); } </script> </head> <body bgcolor="#FFFFFF"> <div id="demo1" class="demo"> <ul> <?php //select * from menu order by CONVERT( name USING gbk ) COLLATE gbk_chinese_ci ASC ; $sql1 = "select * from menu where p_id = 0 order by id"; //获取根节点 $result1 = mysql_db_query($mysql_database, $sql1, $conn); // 获取查询结果 // $row = mysql_fetch_row($result); while ($row1 = mysql_fetch_array($result1)) { echo "<li id=\"phtml_1\" leaf=\"" . $row1['level'] . "\" n_id=\"" . $row1['id'] . "\"><a href=\"" . $row1['url'] . "\">" . $row1['name'] . "</a>"; echo '<ul>'; $sql2 = "select * from menu where p_id = " . $row1['id'] . " order by CONVERT( name USING gbk ) COLLATE gbk_chinese_ci ASC"; $result2 = mysql_db_query($mysql_database, $sql2, $conn); while ($row2 = mysql_fetch_array($result2)) { echo "<li id=\"phtml_1\" leaf=\"" . $row2['level'] . "\" n_id=\"" . $row2['id'] . "\"><a href=\"" . $row2['url'] . "\">" . $row2['name'] . "</a>"; echo '<ul>'; $sql3 = "select * from menu where p_id = " . $row2['id'] . " order by id"; $result3 = mysql_db_query($mysql_database, $sql3, $conn); while ($row3 = mysql_fetch_array($result3)) { if($row3['name'] == '线路保护' || $row3['name'] == '旁路保护' || $row3['name'] == '母线保护' || $row3['name'] == '母联及分段开关保护'){ $sql4 = "select * from menu where p_id = " . $row3['id'] . " order by id"; $result4 = mysql_db_query($mysql_database, $sql4, $conn); $group220 = array(); $group110 = array(); $group35 = array(); $group10 = array(); $group_other = array(); $group_all = array(); while ($row4 = mysql_fetch_array($result4)) { //print_r($row4['name']); $str = substr($row4['name'],0,2); //echo $str.'<br/>'; if($str == '22'){//220 $group220[count($group220)] = $row4; }else if($str == '11'){//110 $group110[count($group110)] = $row4; }else if($str == '35'){//35 $group35[count($group35)] = $row4; }else if($str == '10'){//10 $group10[count($group10)] = $row4; }else{//其他 $group_other[count($group_other)] = $row4; } } $group_all = array_merge($group220, $group110, $group35, $group10, $group_other); //print_r($group_all); echo "<li id=\"phtml_1\" leaf=\"" . $row3['level'] . "\" n_id=\"" . $row3['id'] . "\"><a href=\"" . $row3['url'] . "\">" . $row3['name'] . "</a>"; echo '<ul>'; for($i = 0; $i < count($group_all); $i++){ echo "<li id=\"phtml_1\" leaf=\"" . $group_all[$i]['level'] . "\" n_id=\"" . $group_all[$i]['id'] . "\"><a href=\"" . $group_all[$i]['url'] . "\">" . $group_all[$i]['name'] . "</a>"; echo "<ul>"; $sql5 = "select * from menu where p_id = " . $group_all[$i]['id'] . " order by id"; $result5 = mysql_db_query($mysql_database, $sql5, $conn); while ($row5 = mysql_fetch_array($result5)) { echo "<li id='phtml_1' leaf=\"" . $row5['level'] . "\" n_id=\"" . $row5['id'] . "\"><a href=\"" . $row5['url'] . "\" target='main' >" . $row5['name'] . "</a>"; echo '</li>'; } echo '</ul>'; echo '</li>'; } echo '</ul>'; echo '</li>'; }else if($row3['name'] == '变压器保护' || $row3['name'] == '所变保护' || $row3['name'] == '电容器保护'){ $sql4 = "select * from menu where p_id = " . $row3['id'] . " order by id"; $result4 = mysql_db_query($mysql_database, $sql4, $conn); $group1 = array(); $group2 = array(); $group3 = array(); $group4 = array(); $group_other1 = array(); $group_all = array(); while ($row4 = mysql_fetch_array($result4)) { //print_r($row4['name']); $str = substr($row4['name'],0,2); //echo $str.'<br/>'; if($str == '#1'){//220 $group1[count($group1)] = $row4; }else if($str == '#2'){//110 $group2[count($group2)] = $row4; }else if($str == '#3'){//35 $group3[count($group3)] = $row4; }else if($str == '#4'){//10 $group4[count($group4)] = $row4; }else{//其他 $group_other1[count($group_other1)] = $row4; } } $group_all = array_merge($group1, $group2, $group3, $group4, $group_other1); //print_r($group_all); echo "<li id=\"phtml_1\" leaf=\"" . $row3['level'] . "\" n_id=\"" . $row3['id'] . "\"><a href=\"" . $row3['url'] . "\">" . $row3['name'] . "</a>"; echo '<ul>'; for($i = 0; $i < count($group_all); $i++){ echo "<li id=\"phtml_1\" leaf=\"" . $group_all[$i]['level'] . "\" n_id=\"" . $group_all[$i]['id'] . "\"><a href=\"" . $group_all[$i]['url'] . "\">" . $group_all[$i]['name'] . "</a>"; echo "<ul>"; $sql5 = "select * from menu where p_id = " . $group_all[$i]['id'] . " order by id"; $result5 = mysql_db_query($mysql_database, $sql5, $conn); while ($row5 = mysql_fetch_array($result5)) { echo "<li id='phtml_1' leaf=\"" . $row5['level'] . "\" n_id=\"" . $row5['id'] . "\"><a href=\"" . $row5['url'] . "\" target='main' >" . $row5['name'] . "</a>"; echo '</li>'; } echo '</ul>'; echo '</li>'; } echo '</ul>'; echo '</li>'; }else{ echo "<li id=\"phtml_1\" leaf=\"" . $row3['level'] . "\" n_id=\"" . $row3['id'] . "\"><a href=\"" . $row3['url'] . "\">" . $row3['name'] . "</a>"; echo '<ul>'; $sql4 = "select * from menu where p_id = " . $row3['id'] . " order by id"; $result4 = mysql_db_query($mysql_database, $sql4, $conn); while ($row4 = mysql_fetch_array($result4)) { //if($row4['name'] == '线路保护'){ //}else{ echo "<li id=\"phtml_1\" leaf=\"" . $row4['level'] . "\" n_id=\"" . $row4['id'] . "\"><a href=\"" . $row4['url'] . "\">" . $row4['name'] . "</a>"; echo "<ul>"; $sql5 = "select * from menu where p_id = " . $row4['id'] . " order by id"; $result5 = mysql_db_query($mysql_database, $sql5, $conn); while ($row5 = mysql_fetch_array($result5)) { echo "<li id='phtml_1' leaf=\"" . $row5['level'] . "\" n_id=\"" . $row5['id'] . "\"><a href=\"" . $row5['url'] . "\" target='main' >" . $row5['name'] . "</a>"; echo '</li>'; } echo '</ul>'; echo '</li>'; //} } echo '</ul>'; echo '</li>'; } } echo '</ul>'; echo '</li>'; } echo '</ul>'; echo '</li>'; //echo "<li id=\"phtml_1\" n_id=\"" . $row['id'] . "\"><a href=\"#\">" . $row['name'] . "</a></li>"; } mysql_free_result($result1); // 关闭连接 mysql_close($conn); ?> </ul> </div> </body> </html>
相关推荐
基于Jquery的JSTree实例,此笔记为学习笔记
Edit Grid限制编辑 ExtJS 4 DirectStore post参数的变化以及应对方法 ...js函数match、exec、test、search、replace、split使用介绍 技巧:Javascript使用隐藏的new来创建对象 禁止页面全选复制,兼容多种浏览器
Ext JS4学习教程+笔记(一) Ext JS4学习教程+笔记(二)事件处理 ...Ext JS4学习教程+笔记(七)树面板Tree Panel Ext JS4学习教程+笔记(三)Ajax请求 Ext JS4学习教程+笔记(五)Form Panel的使用 Ext学习网址
Angular + Webpack入门(ES6) 如何运行: 克隆项目 运行npm install 运行npm start ...笔记! 如果您想将其用于生产,请注意,当前webpack会将您的源代码与供应商代码捆绑在一起。 将来会修复。
D3.js-Tree实战笔记 Vue2笔记 纯前端的进军 Cycle.js笔记 webpack多页面配置 非科班恶补算法 无角2 Angular2相关 Webpack相关 前端阶段性总结 CSS相关 js相关 jQuery相关 three.js笔记
XPAGE学习笔记 1 Theme 2 2 在Xpage中使用Dojo 2 2.1 加载dojo.js 2 2.2 设置应用程序主题引入tundra.css 2 2.3 设置xpage属性引入dojo模块 3 2.4 Xpage的页面html代码 4 2.5 在xpage中使用dojo编程 4 2.5.1 按钮...
Vue3快速上手(Vue3学习笔记) .Vue3简介 - 2020年9月18日,Vue.js发布3.0版本,代号:One Piece(海贼王) - 耗时2年多、[2600+次提交](https://github.com/vuejs/vue-next/graphs/commit-activity)、[30+个RFC]...
RightJS首页 这是 RightJS 框架主页项目。... http://github.com/rightjs/rightjs-core/tree/master/doc/ 笔记 不要忘记在更新时运行以下任务 rake rightjs:update 它将重建 API 的数据库(需要几分钟)
在这篇文章之前小颖分享过小颖自己写的组件:Vue.js组件tabs实现选项卡切换效果和Tree升级版(实现省市多级联动) 先给大家看下小颖写了一个简单的组件示例: 组件: <input type=text v-bind:style='{ width:...
koa2-note:《 Koa2进阶学习笔记》已完结:Christmas_tree::Christmas_tree::Christmas_tree:
你不知道的 JavaScript 阅读笔记相关可以在这里下载本书第一部分“作用域和闭包”随附的资料(代码示例、练习题等):可以在这里下载本书第二部分“this 和对象原型”随附的资料(代码示例、练习题等):作用域是...
笔记: 我正在积极寻找可以将该库移植到贡献者。 如果您对此感兴趣,请随时给。 安装 bower install ion-tree-list --save 在您的HEAD标签中添加: [removed][removed] 或者从项目中获取它: : 。 您需要添加ion-...
霍夫曼编码 霍夫曼编码的JS,CSS和HTML表示形式 信息 您可以访问 笔记 该站点使用JS来实现霍夫曼编码_/js/HuffmanCoding.js 它使用D3.js库来绘制类似于二叉树的树 ##许可证MIT
笔记 网络树发送者 不是真正的浏览器软件包,需要通过webpack存根节点模块: fs: "empty" 在ember-cli-build.js配置 需要为每种语言构建WASM软件包,以获取WASM绑定 每种语言都需要分别安装在package.json中 需要...
使用Relations建立表之间的关系并却使用PagedDataSource类对DataList进行分页 通过作业,定时同步两个数据库 SQLSERVER高级注入技巧 利用反射实现ASP.NET控件和数据实体之间的双向绑定,并且在客户端自动验证输入的...
原生js判断链接是否有效,可以解决跨域问题,但部分浏览器尚不兼容;你可以前往https://gitee.com/zhiqinzhe/zhiqinzheblog/tree/master/getUrlState免费下载
原始笔记助手 ... --tree.json(扫描文件) out.md内容 # 第1级 core ## 一 instance ### 1 init.js `export function initMixin(Vue: Class) {` 这里是一些markdown笔记 对initMixin解释说明 1. 说明1 2. 注
开发笔记 首次加载 如果你刚刚从 github 下载了这个并且你想做开发,你需要安装这些: 节点.js grunt-cli grunt-init 由于您是从 github 获得的,我们假设您还安装了 git 的命令行版本。 如果没有,去获取 git。...
B+tree实现键值对存储 slam那本书 c/c++ 语法 与算法题 面试题 c++primer习题答案 leetcode动画展示 编程everything related 资源库 资源库 简单背后的原理,适合面试 开源开发者 效率工具 related vim工具,看起来...
前言 在 4 月 21 日晚,Vue 作者尤雨溪在...Tree shaking support:可以将无用模块“剪辑”,仅打包需要的。 Composition API:组合API Fragment, Teleport, Suspense:“碎片”,Teleport即Protal传送门,“悬念” Be