ext3.0 treegrid 部门管理

 

<script type="text/javascript" charset="utf-8">
        jackAccess.Rsb_DepartMents = function() {
            var myPageSize = 20, searchString = "";
            var treeGrid, winFormPanel, formPanel, winExcelForm, excelForm, rootnode;
            var treeloader = new Ext.ux.tree.TreeGridLoader({
                url: "/rsb_departments/treelist?test="
            });
            formPanel = new Ext.FormPanel({ frame: true,
                items: [
                                    { xtype: 'textfield', fieldLabel: "部门名称", name: "DeptName", width: 200, allowBlank: false, blankText: '非空' },
                                    { xtype: 'textfield', fieldLabel: "部门编号", name: "DeptNum", width: 200, allowBlank: false, blankText: '非空' },
                                    { xtype: 'textfield', fieldLabel: "管理者", name: "Managerid", width: 200 }

                                     ]
            });
            excelForm = new Ext.FormPanel({ frame: true, url: "/rsb_departments/excel", method: "post", fileUpload: true,
                items: [
                                    { xtype: 'textfield', fieldLabel: "部门ID", name: "DeptName", width: 200, value: "1" },
                                     { xtype: 'textfield', fieldLabel: "部门编号", name: "DeptNum", width: 200, value: "2" },
                                    { xtype: 'textfield', fieldLabel: "部门名称", name: "DeptName", width: 200, value: "3" },
                                    { xtype: 'textfield', fieldLabel: "上级部门", name: "Managerid", width: 200, value: "4" },
                                    { fieldLabel: "Excel文件", buttonText: 'Excel文件', width: 200, name: "file", xtype: "fileuploadfield" }
                                     ]
            });
            winFormPanel = new Ext.Window({ modal: true, closable: true, resizable: false, bodyStyle: "padding:5px", width: 400, title: item.text, iconCls: 'drives', layout: "form", closeAction: "hide",
                buttons: [{ text: "提交", handler: function() { OnSubmit(); } }, { text: "关闭", handler: function() { winFormPanel.hide(); } }],
                items: formPanel
            });
            winExcelForm = new Ext.Window({ modal: true, closable: true, title: "导入excel", resizable: false, bodyStyle: "padding:5px", width: 400, iconCls: 'drives', layout: "form", closeAction: "hide",
                buttons: [{ text: "提交", handler: function() { ExcelSubmit(); } }, { text: "关闭", handler: function() { winExcelForm.hide(); } }],
                items: excelForm
            });
            function ExcelSubmit() {
                if (excelForm.form.isValid()) {
                    excelForm.getForm().submit({ waitTitle: '请稍候', waitMsg: '正在添加数据......',

                        success: function(form, action) {
                            if (action.result.flag) { Ext.MessageBox.alert("警告", "操作成功"); rootnode.reload(); }
                            else { Ext.MessageBox.alert("警告", "添加失败:" + action.result.error); }
                        }
                    });
                }
            }
            function OnCreate() {
                winFormPanel.show();
                winFormPanel.action = "create";
                winFormPanel.DeptID = "";
                winFormPanel.setTitle("添加新部门");
            }
            function OnUpdate() {
                var selectedNode = treeGrid.getSelectionModel().getSelectedNode();
                if (selectedNode == null) { Ext.MessageBox.alert("警告", "请选择一个部门节点!"); return; }
                winFormPanel.show();
                winFormPanel.DeptID = selectedNode.attributes["DeptID"];
                winFormPanel.action = "update";
                winFormPanel.setTitle("修改[" + selectedNode.attributes["DeptName"] + "]");
                formPanel.getForm().setValues(selectedNode.attributes);
            }
            function OnDelete() {
            }
            function OnSubmit() {
                if (formPanel.form.isValid()) {
                    formPanel.form.submit({ waitTitle: '请稍候', waitMsg: '正在添加数据......', url: "/Rsb_DepartMents/Submit", method: "post",
                        params: { action: winFormPanel.action, deptid: winFormPanel.DeptID },
                        success: function(form, action) {
                            if (action.result.flag) {
                                Ext.MessageBox.alert("警告", "操作成功");
                                var tree = treeGrid.getSelectionModel().getSelectedNode();

                                tree.parentNode.reload();

                                winFormPanel.hide();
                            }
                            else { Ext.MessageBox.alert("警告", "添加失败:" + action.result.error); }
                        }
                    });
                }
            }
            treeGrid = new Ext.ux.tree.TreeGrid({ columnLines: true,
                containerScroll: true, autoScroll: true,
                width: Ext.get("center").getWidth() - 10,
                height: Ext.get("center").getHeight() - 33,
                columns: [
               { header: '部门名称', dataIndex: 'DeptName', width: 350 },
               { header: '部门编号', dataIndex: 'DeptNum', width: 200 },
               { header: '级别', dataIndex: 'Grade', width: 200 },
               { header: '管理人', dataIndex: 'Managerid', width: 200 }

               ],
                loader: treeloader,
                tbar: [{ text: "添加新部门", iconCls: "create", handler: function() { OnCreate(); } }, '-',
              { text: "修改所选", iconCls: "update", handler: function() { OnUpdate(); } }, '-',
              { text: "删除所选", iconCls: "delete", handler: function() { OnDelete(); } }, '-',
              { text: "导入excel数据", iconCls: "excel", handler: function() { winExcelForm.show(); } }, '-',
               { text: "导出excel", iconCls: "excel", handler: function() { window.open("/Excel/DepartMents"); } }]
                //绑定加载器
            });
            rootnode = new Ext.tree.AsyncTreeNode({
                id: '0',
                text: '中华人民共和国行政区划代码',
                draggable: false, // 根节点不容许拖动
                expanded: true
            });
            rootnode.attributes = {
                fatherID: '',
                DeptID: '1'

            };
            treeGrid.setRootNode(rootnode);

            // 响应加载前事件,传递node参数
            treeGrid.on('beforeload', function(node) {

                treeGrid.loader.dataUrl = "/rsb_departments/treelist?fatherID=" + node.attributes["DeptID"];
            }, treeloader);

            return { Init: function() { return treeGrid; } }
        }
        Ext.onReady(function() {
            var grid = new jackAccess.Rsb_DepartMents();
            grid.Init().render("Rsb_DepartMents_TreePanel");

        });

    </script>

    <div id="Rsb_DepartMents_TreePanel">
    </div>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
TreeGrid C是一个用于构建树形网格的JavaScript库。它提供了一个强大的工具,用于在网页中展示和编辑大型层级数据。 TreeGrid C具有以下特点: 1. 响应式设计:TreeGrid C可以自适应不同设备的屏幕大小,包括电脑、平板和手机。这使得用户可以在任何设备上都有良好的视觉和操作体验。 2. 强大的数据管理功能:TreeGrid C允许用户以树形结构方式展示数据,并提供了丰富的数据编辑和操作功能。用户可以通过展开和折叠节点来显示或隐藏子节点,还可以对节点进行排序、筛选、拖放等操作。 3. 自定义样式和主题:TreeGrid C提供了一系列的样式和主题选项,使用户可以根据自己的需求,对网格的外观和风格进行定制。这样能够确保网格与网页的整体风格保持一致。 4. 异步数据加载:TreeGrid C支持异步加载数据,可以从服务器或其他数据源动态获取数据。这对于处理大数据量和实现延迟加载非常有帮助,能够提高网格在加载和渲染大型数据集时的性能。 5. 导出和打印功能:TreeGrid C还提供了导出数据到Excel、PDF或打印的功能。这使得用户可以方便地将数据分享给其他人,或者在需要时进行打印。 总之,TreeGrid C是一个功能丰富、易于使用的JavaScript库,能够帮助用户轻松构建出具有强大数据管理和可视化能力的树状网格。无论是在企业内部管理系统还是公开的数据展示页面中,TreeGrid C都是一个非常实用的工具。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sunjay117

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值