123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- <!DOCTYPE html>
- <html>
- <head>
- <title>TODO supply a title</title>
- {include file="../application/manage/view/commons/headers.html" }
- <link href="/static/js/ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" />
- <script src="/static/js/ztree/js/jquery.ztree.all.min.js" type="text/javascript" ></script>
- <style type="text/css">
- .ztree li span.button.add {margin-left:2px; margin-right: -1px; background-position:-144px 0; vertical-align:top; *vertical-align:middle}
- </style>
-
- <script type="text/javascript">
- var curMenu = null, zTree_Menu = null;
- var setting = {
- view: {
- addHoverDom: addHoverDom,removeHoverDom: removeHoverDom,
- showLine: true, selectedMulti: false, dblClickExpand: false
- },
- data: { simpleData: { enable: true } },
- callback: {
- onNodeCreated: onNodeCreated,
- beforeClick: beforeClick,
- beforeEditName: beforeEditName,
- beforeRemove:beforeRemove
- },
- edit: {
- enable: true,
- editNameSelectAll: true,
- showRemoveBtn: true,
- showRenameBtn: true
- },
- async: {
- enable: true,
- url:"/manage/frontmenu/menudata",
- autoParam:["id", "pId=pid", "name=n", "level=lv"],
- otherParam:{"otherParam":"zTreeAsyncTest"},
- dataFilter: filter
- }
- };
-
- function filter(treeId, parentNode, childNodes) {
- if (!childNodes) return null;
- for (var i=0, l=childNodes.length; i<l; i++) {
- childNodes[i].name = childNodes[i].name.replace(/\.n/g, '.');
- }
- return childNodes;
- };
-
- function beforeRemove(treeId, treeNode){
- if(confirm("确定删除节点("+treeNode.name+")?")){
- $.ajax({
- url:"/manage/frontmenu/delete",
- data:"id="+treeNode.id+"&t="+new Date(),
- success:function(rs){
- if(rs=="delete_ok"){
- document.location.reload();
- }else{
- alert("操作失败!");
- }
- }
- });
- }
- return false;
- }
-
- function onNodeCreated(){
- zTree_Menu = $.fn.zTree.getZTreeObj("menutree");
- curMenu = zTree_Menu.getNodes()[0].children[0].children[0];
- zTree_Menu.selectNode(curMenu);
- var a = $("#" + zTree_Menu.getNodes()[0].tId + "_a");
- a.addClass("cur");
- }
-
- function beforeEditName(treeId, treeNode) {
- var zTree = $.fn.zTree.getZTreeObj("menutree");
- zTree.selectNode(treeNode);
- $("#myform").find("input[name='id']").val(treeNode.id);
- $("#myform").find("input[name='pid']").val(treeNode.pId);
- $("#myform").find("input[name='name']").val(treeNode.name);
- $("#myform").find("input[name='url']").val(treeNode.url);
- $("#myform").find("input[name='ordernum']").val(treeNode.ordernum);
- $("#myform").find("input[name='icon_name']").val(treeNode.icon_name);
- editWin.window("open");
- return false;
- }
-
- var newCount = 1;
- function addHoverDom(treeId, treeNode) {
- var sObj = $("#" + treeNode.tId + "_span");
- if (treeNode.editNameFlag || $("#addBtn_"+treeNode.tId).length>0) return;
- var addStr = "<span class='button add' id='addBtn_" + treeNode.tId
- + "' title='add node' onfocus='this.blur();'></span>";
- sObj.after(addStr);
- var btn = $("#addBtn_"+treeNode.tId);
- if (btn) btn.bind("click", function(){
- //var zTree = $.fn.zTree.getZTreeObj("menutree");
- //zTree.addNodes(treeNode, {id:(100 + newCount), pId:treeNode.id, name:"new node" + (newCount++)});
- showAddChildMenuView(treeNode.id);
- return false;
- });
- };
-
- // 显示添加窗口
- function showAddChildMenuView(pid){
- editWin.window("open");
- $("#myform").find("input[name='pid']").val(pid);
- $("#myform").find("input[name='id']").val("");
- $("#myform").find("input[name='name']").val("");
- $("#myform").find("input[name='url']").val("");
- $("#myform").find("input[name='ordernum']").val("");
- $("#myform").find("input[name='icon_name']").val("");
- }
- // 保存菜单
- function save(){
- var data=$("#myform").serialize();
- $.ajax({
- url:"/manage/frontmenu/update",
- contentType: "application/x-www-form-urlencoded; charset=utf-8",
- data:data+"&t="+new Date(),
- success:function(rs){
- if(rs=="insert_ok"){
- document.location.reload();
- }else if(rs=="update_ok"){
- document.location.reload();
- }else{
- alert("操作失败!");
- }
- },error:function(e,e1,e2){
- alert(e2);
- }
- });
- }
-
- function removeHoverDom(treeId, treeNode) {
- $("#addBtn_"+treeNode.tId).unbind().remove();
- };
- function beforeClick(treeId, node) {
- if (node.isParent) {
- if (node.level === 0) {
- var pNode = curMenu;
- while (pNode && pNode.level !==0) {
- pNode = pNode.getParentNode();
- }
- if (pNode !== node) {
- var a = $("#" + pNode.tId + "_a");
- a.removeClass("cur");
- zTree_Menu.expandNode(pNode, false);
- }
- a = $("#" + node.tId + "_a");
- a.addClass("cur");
- var isOpen = false;
- for (var i=0,l=node.children.length; i<l; i++) {
- if(node.children[i].open) {
- isOpen = true;
- break;
- }
- }
- if (isOpen) {
- zTree_Menu.expandNode(node, true);
- curMenu = node;
- } else {
- zTree_Menu.expandNode(node.children[0].isParent?node.children[0]:node, true);
- curMenu = node.children[0];
- }
- } else {
- zTree_Menu.expandNode(node);
- }
- }
- return !node.isParent;
- }
-
- // 菜单编辑框
- var editWin;
- function initEditWin(){
- editWin=$("#editWin").dialog({
- modal: true,
- title: "菜单信息编辑",
- closed: true,
- iconCls: 'icon-edit',
- width:500, height:350,
- left:"25%",top:50,
- modal: true, cache: false,resizable:true,draggable:true,
- collapsible:false
- });
- editWin.window("close");
- }
- $(document).ready(function(){
- $.fn.zTree.init($("#menutree"), setting);
- initEditWin();
- });
-
- function showWin(){
- editWin.window("open");
- }
-
- </script>
-
- </head>
- <body>
- <div id="menu" data-options="region:'west',iconCls:'icon-forward',split:true,border:false" title="功能导航" style="height:100%;width: 100%; overflow: auto;" >
- <ul id="menutree" class="ztree" style="height:100%;width: 100%;padding: 0px; margin: 0px;"></ul>
- </div>
- <div id="editWin" buttons="#dlg-buttons" auth_id="AUTH_001" auth_name="编码框" >
- <form id="myform" action="" method="post" >
- <input name="id" type="hidden" />
- <table id="editGrid" fitColumns="false" style="fitColumns:false" >
- <thead>
- <tr>
- <th height="32" width="22%" data-options="field:'code'">名称</th>
- <th width="80%" data-options="field:'name'">值</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td height="32" align="right" >上级菜单:</td>
- <td><input name="pid" type="text" size="35" /></td>
- </tr>
- <tr>
- <td height="32" align="right" >菜单名称:</td>
- <td><input name="name" type="text" size="35" /></td>
- </tr>
- <tr>
- <td height="32" align="right" >打开网址:</td>
- <td><input name="url" type="text" size="35" /></td>
- </tr>
- <tr>
- <td height="32" align="right" >ICON图标:</td>
- <td><input name="icon_name" type="text" size="35" /></td>
- </tr>
- <tr>
- <td height="32" align="right" >排序号码:</td>
- <td><input name="ordernum" type="text" size="15" /></td>
- </tr>
- </tbody>
- </table>
- </form>
- <div id="dlg-buttons">
- <table cellpadding="0" cellspacing="0" style="width:100%">
- <tr>
- <td>
- <a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-save',plain:true" onclick="save()" >保存</a>
- <a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-cancel',plain:true" onclick="editWin.window('close')" >关闭</a>
- </td>
- </tr>
- </table>
- </div>
- </div>
- </body>
- </html>
|