代码经过精心改良,可以直接使用,具体看注释吧.
1,前台,代码如下:
    
   <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LineInfoManagement.aspx.cs" Inherits="LMX.XiAnPeiHua.Web.Admin.UnitManagement.LineInfoManagement" %>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>线路信息设置</title>
    <script src="/js/jquery-1.7.1.min.js"></script>
    <script src="/js/jquery-easyui-1.4.2/jquery.easyui.min.js"></script>
    <script src="/js/jquery-easyui-1.4.2/locale/easyui-lang-zh_CN.js"></script>
    <link href="/js/jquery-easyui-1.4.2/themes/metro-blue/easyui.css" rel="stylesheet" />
    <link href="/js/jquery-easyui-1.4.2/themes/icon.css" rel="stylesheet" />
    <link href="/css/style.css" rel="stylesheet" />
    <link href="/css/admin.css" rel="stylesheet" />
    <script type="text/javascript">
        $(document).ready(function () {
            fLoadTable();//加载参数
            $('#tt').datagrid('reload', {
                Method: 'FirstLoad'
            });
            $('#unit_id').combobox({
                onSelect: function (rec) {
                    //alert(rec.ID);
                    //$('#site_id').combobox('reload', location.href + '?type=LoadSite&UnitID=' + rec.ID);
                    var vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=LoadSite&UnitID=' + rec.ID;
                    $('#site_id').combobox({
                        url: vUrl,
                        onLoadSuccess: function () {
                            var data = $('#site_id').combobox('getData');
                            if (data.length > 0) {
                                $('#site_id').combobox('select', data[0].ID);
                            }
                            else {
                                $('#site_id').combobox('clear');
                            }
                        }
                    })
                }
            });
        })
        function fLoadTable() {
            $('#tt').datagrid({
                title: '',
                url: location.href,
                pagination: true,
                pageSize: 20,
                pagePosition: 'top',
                striped: true,
                //singleSelect: true,
                ctrlSelect: true,//在启用多行选择的时候允许使用Ctrl键+鼠标点击的方式进行多选操作。
                rownumbers: true,
                columns: [[
                    { field: 'unit_id', title: 'unit_id', align: 'center', hidden: true },
                    { field: 'site_id', title: 'site_id', align: 'center', hidden: true },
                    { field: 'line_id', title: 'line_id', align: 'center', hidden: true },
                    { field: 'ckey', title: '线路编号', align: 'center' },
                    { field: 'name', title: '线路名称', align: 'center' },
                    { field: 'remark', title: '备注', align: 'center' }
                ]],
                toolbar: [{
                    text: '增加',
                    iconCls: 'icon-add',
                    handler: function () {
                        $('#dlg').dialog('open').dialog('setTitle', '新增线路信息');
                        $('#dlg_form').form('clear');
                        $('#unit_id').combo('readonly', false);    // 禁用只读模式
                        $('#site_id').combo('readonly', false);    // 禁用只读模式
                        $('#unit_id').combobox('reload', '/Admin/UnitManagement/LineInfoManagement.aspx?type=LoadUnit');
                        vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=add';
                    }
                }, {
                    text: '修改',
                    iconCls: 'icon-edit',
                    handler: function () {
                        var row = $('#tt').datagrid('getSelected');
                        if (row) {
                            $('#dlg').dialog('open').dialog('setTitle', '修改线路信息');
                            $('#unit_id').combobox('reload', '/Admin/UnitManagement/LineInfoManagement.aspx??type=LoadUnit');
                            $('#site_id').combobox('reload', '/Admin/UnitManagement/LineInfoManagement.aspx?type=LoadSite');
                            $('#dlg_form').form('load', row);
                            $('#unit_id').val(row.unit_id);
                            $('#site_id').val(row.line_id);
                            $('#ckeyPre').val(row.site_id);
                            $('#unit_id').combo('readonly', true);    // 启用只读模式
                            $('#site_id').combo('readonly', true);    // 启用只读模式
                            vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=modify&line_id=' + row.line_id;
                        } else {
                            $.messager.alert('请至少选中一项作为修改项.')
                        }
                    }
                }, '-', {
                    text: '删除',
                    iconCls: 'icon-remove',
                    handler: function () {
                        var row = $('#tt').datagrid('getSelected');
                        if (row) {
                            $.messager.confirm('提示', '您确定要删除这个线路信息吗?', function (r) {
                                if (r) {
                                    vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=del&site_id=' + row.site_id + '&unit_id=' + row.unit_id + '&line_id=' + row.line_id;
                                    $.ajax({
                                        type: "POST",
                                        url: vUrl,
                                        success: function (json) {
                                            var json = eval('(' + json + ')');
                                            if (json.result == true) {
                                                $.messager.show({
                                                    title: 'Success',
                                                    msg: '删除成功!'
                                                });
                                                $('#dlg').dialog('close');
                                                // close the dialog
                                                $('#tt').datagrid('reload'); // reload the user data
                                            } else {
                                                $.messager.show({
                                                    title: 'Error',
                                                    msg: '删除失败,请稍后再试!'
                                                });
                                                $('#dlg').dialog('close');
                                                // close the dialog
                                                $('#tt').datagrid('reload'); // reload the user data
                                            }
                                        }
                                    });
                                }
                            });
                        }
                        else {
                           $.messager.alert("请至少选中一项作为删除项");

                        }
                    }
                }]
            });
        };
        function fSaveData() {
            $('#dlg_form').form('submit', {
                url: vUrl,
                onSubmit: function () {
                    return $(this).form('validate');
                },
                success: function (sjson) {
                    var json = eval('(' + sjson + ')');
                    if (json.result == true) {
                        $.messager.show({
                            title: 'Success',
                            msg: json.msg ? json.msg : '操作成功!'
                        });
                        $('#dlg').dialog('close');     // close the dialog
                        $('#tt').datagrid('reload'); // reload the user data
                    } else {
                        $.messager.show({
                            title: 'Error',
                            msg: json.msg ? json.msg : '操作失败,请稍后再试!'
                        });
                        $('#dlg').dialog('close');     // close the dialog
                    }
                },
                error: function () {
                    $.messager.show({
                        title: 'Error',
                        msg: json.msg ? json.msg : '操作失败,请稍后再试!'
                    });
                    $('#dlg').dialog('close');     // close the dialog
                }
            });
        }
    </script>
</head>
<body>
    <div class="divForTable">
        <table id="tt" style="width: 100%; height: 600px; $(this).width() * 0.2;">
        </table>
    </div>
    <div id="dlg" class="easyui-dialog" style="width: 300px; height: 350px; padding: 5px 10px"
        data-options="closed:true,buttons:'#dlg-buttons',modal:true">
        <form id="dlg_form" method="post">
            <div class="fitem">
                <label>所属电网:</label>
                <input id="unit_id" name="unit_id" class="easyui-combobox" required="true" data-options="valueField:'ID',textField:'Name',editable:false" />
            </div>
            <div class="fitem">
                <label>所属变电所:</label>
                <input id="site_id" name="site_id" class="easyui-combobox" required="true" data-options="valueField:'ID',textField:'Name',editable:false" />
            </div>
            <%-- <div class="fitem">
                <label>线路编号:</label>
                <input name="ckeyPre" id="ckeyPre" class="easyui-validatebox" readonly="true" style="width: 30px;" />
            </div>--%>
            <div class="fitem">
                <label>名称:</label>
                <input name="name" id="name" class="easyui-validatebox" required="true" />
            </div>
            <div class="fitem">
                <label>备注:</label>
                <input name="remark" id="remark" class="easyui-validatebox" />
            </div>
            <div class="line" style="margin-top: 15px;">
                说明:线路编号由8位数字组成,前5位是所属变电所编号,最后3位代表线路内部编号.(编号在前端不显示,后台自动添加)
            </div>
        </form>
    </div>
    <div id="dlg-buttons">
        <a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-ok" onclick="fSaveData()">保存
        </a>
        <a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-cancel"
            onclick="javascript:$('#dlg').dialog('close')">取消
        </a>
    </div>
</body>
</html>

2,后台代码如下:
       protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Request.QueryString["from"] == "LoadF_ParentItemCode")
                {
                    using (item_energyEntities ent = new item_energyEntities())
                    {
                        List<t_dt_energyitemdict> list = (from c in ent.t_dt_energyitemdict where c.F_EnergyItemType == "A" select c).ToList();
                        if (list != null && list.Count != 0)
                        {
                            var vData = from m in list select new { ID = m.F_EnergyItemCode, Name = m.F_EnergyItemName };
                            Response.Write(JsonHelper.Serialize(vData));
                        }
                        else
                        {
                            Response.Write(null);
                        }
                        Response.End();
                    }
                }
                if (Request.Form["Method"] == "FirstLoad")
                {
                    List<t_dt_energyitemdict> list = DataLoader.GetEnergyItemList();
                    int page = string.IsNullOrWhiteSpace(Request["page"]) ? 1 : Int32.Parse(Request["page"]);
                    int rows = string.IsNullOrWhiteSpace(Request["rows"]) ? 1 : Int32.Parse(Request["rows"]);
                    string order = string.IsNullOrWhiteSpace(Request["order"]) ? "ASC" : Request["order"].ToUpper();
                    string sort = string.IsNullOrWhiteSpace(Request["sort"]) ? "ID" : Request["sort"];
                    IQueryable<t_dt_energyitemdict> query = CommonTools.DataSorting<t_dt_energyitemdict>(list.AsQueryable(), sort, order).Skip((page - 1) * rows).Take(rows);
                    Response.Write(JsonHelper.Serialize(new { total = list.Count, rows = query }));
                    Response.End();
                }
                if (Request.QueryString["type"] == "add")
                {
                    string strMsg;
                    if (AddObject(out strMsg))
                    {
                        Response.Write(JsonHelper.Serialize(new { result = true, msg = strMsg }));
                    }
                    else
                    {
                        Response.Write(JsonHelper.Serialize(new { result = false, msg = strMsg }));
                    }
                    Response.End();
                }
                if (Request.QueryString["type"] == "modify")
                {
                    string strMsg;
                    if (ModifyObject(out strMsg))
                    {
                        Response.Write(JsonHelper.Serialize(new { result = true, msg = strMsg }));
                    }
                    else
                    {
                        Response.Write(JsonHelper.Serialize(new { result = false, msg = strMsg }));
                    }
                    Response.End();
                }
                if (Request.QueryString["type"] == "del")
                {
                    string strMsg;
                    if (DelObject(out strMsg))
                    {
                        Response.Write(JsonHelper.Serialize(new { result = true, msg = strMsg }));
                    }
                    else
                    {
                        Response.Write(JsonHelper.Serialize(new { result = false, msg = strMsg }));
                    }
                    Response.End();
                }
            }
        }
        /// <summary>
        /// 增加一个对一个对象.
        /// </summary>
        /// <returns></returns>
        private bool AddObject(out string strMsg)
        {
            string F_EnergyItemCode = Request.Form["F_EnergyItemCode"];
            string F_EnergyItemName = Request.Form["F_EnergyItemName"];
            string F_ParentItemCode = Request.Form["F_ParentItemCode"];
            string F_EnergyItemType = Request.Form["F_EnergyItemType"];
            string F_EnergyItemUnit = Request.Form["F_EnergyItemUnit"];
            string F_EnergyItemFml = Request.Form["F_EnergyItemFml"];
            string F_EnergyItemState = Request.Form["F_EnergyItemState"];
            short sF_EnergyItemState = 0;
            if (short.TryParse(F_EnergyItemState, out sF_EnergyItemState))
            {
                sF_EnergyItemState = short.Parse(F_EnergyItemState);
            }
            bool bPass = false;
            try
            {
                using (item_energyEntities ent = new item_energyEntities())
                {
                    t_dt_energyitemdict aNewModel = new t_dt_energyitemdict()
                    {
                        F_EnergyItemCode = F_EnergyItemCode,
                        F_EnergyItemState = sF_EnergyItemState,
                        F_EnergyItemType = F_EnergyItemType,
                        F_EnergyItemUnit = F_EnergyItemUnit,
                        F_EnergyItemName = F_EnergyItemName,
                        F_EnergyItemFml = F_EnergyItemFml,
                        F_ParentItemCode = F_ParentItemCode
                    };
                    ent.t_dt_energyitemdict.Add(aNewModel);
                    if (ent.SaveChanges() > 0)
                    {
                        bPass = true;
                        strMsg = "增加成功。";
                    }
                    else
                    {
                        bPass = false;
                        strMsg = "增加失败,请稍后再试。";
                    }
                }
            }
            catch (Exception ex)
            {
                strMsg = ex.Message;
                bPass = false;
            }
            return bPass;
        }
        /// <summary>
        /// 更新一个对象.
        /// </summary>
        /// <returns></returns>
        private bool ModifyObject(out string strMsg)
        {
            string F_EnergyItemCode = Request.Form["F_EnergyItemCode"];
            string F_EnergyItemName = Request.Form["F_EnergyItemName"];
            string F_ParentItemCode = Request.Form["F_ParentItemCode"];
            string F_EnergyItemType = Request.Form["F_EnergyItemType"];
            string F_EnergyItemUnit = Request.Form["F_EnergyItemUnit"];
            string F_EnergyItemFml = Request.Form["F_EnergyItemFml"];
            string F_EnergyItemState = Request.Form["F_EnergyItemState"];
            short sF_EnergyItemState = 0;
            if (short.TryParse(F_EnergyItemState, out sF_EnergyItemState))
            {
                sF_EnergyItemState = short.Parse(F_EnergyItemState);
            }
            bool bPass = false;
            try
            {
                using (item_energyEntities ent = new item_energyEntities())
                {
                    t_dt_energyitemdict aModel = (from c in ent.t_dt_energyitemdict where c.F_EnergyItemCode == F_EnergyItemCode select c).FirstOrDefault();
                    if (aModel != null)
                    {
                        aModel.F_EnergyItemCode = F_EnergyItemCode;
                        aModel.F_EnergyItemName = F_EnergyItemName;
                        aModel.F_ParentItemCode = F_ParentItemCode;
                        aModel.F_EnergyItemType = F_EnergyItemType;
                        aModel.F_EnergyItemUnit = F_EnergyItemUnit;
                        aModel.F_EnergyItemFml = F_EnergyItemFml;
                        aModel.F_EnergyItemState = sF_EnergyItemState;
                        if (ent.SaveChanges() > 0)
                        {
                            bPass = true;
                            strMsg = "修改成功。";
                        }
                        else
                        {
                            bPass = false;
                            strMsg = "修改失败,请稍后再试。";
                        }
                    }
                    else
                    {
                        bPass = false;
                        strMsg = "不存在此记录,请稍后再试。";
                    }
                }
            }
            catch (Exception ex)
            {
                strMsg = ex.Message;
                bPass = false;
                //throw;
            }
            return bPass;
        }
        /// <summary>
        /// 删除一个对象.
        /// </summary>
        /// <returns></returns>
        private bool DelObject(out string strMsg)
        {
            string F_EnergyItemCode = Request.QueryString  ["F_EnergyItemCode"];
            bool bPass = false;
            using (item_energyEntities ent = new item_energyEntities())
            {
                t_dt_energyitemdict aModel = (from c in ent.t_dt_energyitemdict where c.F_EnergyItemCode == F_EnergyItemCode select c).FirstOrDefault();
                try
                {
                    if(aModel!=null)
                    {
                        ent.t_dt_energyitemdict.Remove(aModel);
                        if(ent.SaveChanges()>0)
                        {
                            bPass = true;
                            strMsg = "删除成功。";
                        }
                        else
                        {
                            bPass = false;
                            strMsg = "删除失败,请稍后再试。";
                        }
                    }
                    else
                    {
                        bPass = false;
                        strMsg = "不存在此记录,请稍后再试。";
                    }
                }
                catch (Exception ex)
                {
                    bPass = false;
                    strMsg = ex.Message;
                }
            }
            return bPass;

}  

EasyUI DataGrid 实用例子(2015-05-22)的更多相关文章

  1. Easyui DataGrid DateRange Filter 漂亮实用的日期区间段筛选功能

    自定义扩展Jquery easyui datagrid filter组件实现对日期类型区间段的筛选功能.显示效果如一下 是不是非常实用 引用的jquery 组件是 Date Range Picker ...

  2. DataTables VS EasyUI DataGrid 基础应用 转

    DataTables中文网推出了 第一篇 关于DataTables和其他表格插件比较后,为了把让这个比较更有意义,更能帮助到大家,DataTables中文网 做了问卷调查,根据小伙伴们的填写我归纳了一 ...

  3. easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)

    easyui datagrid 禁止选中行   没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...

  4. jQuery EasyUI DataGrid Checkbox 数据设定与取值

    纯粹做个记录,以免日后忘记该怎么设定. 这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数 ...

  5. 扩展jquery easyui datagrid编辑单元格

    扩展jquery easyui datagrid编辑单元格 1.随便聊聊 这段时间由于工作上的业务需求,对jquery easyui比较感兴趣,根据比较浅薄的js知识,对jquery easyui中的 ...

  6. EasyUI Datagrid 鼠标悬停显示单元格内容 复制代码

    EasyUI Datagrid 鼠标悬停显示单元格内容 ,halign:, align: 0 « 上一篇:LINQ to Entities 中的查询» 下一篇:去掉字符串中的非数字字符 posted ...

  7. easyui datagrid checkbox multiple columns have been done do

    lengku1987   2013-01-06 22:27:47   Sponsored Links   easyui datagrid checkbox multiple columns have ...

  8. easyui datagrid中 多表头方法总结

    easyui datagrid中怎么设置表头成多行显示呢?其实很简单,就是给datagrid的columns属性设置成多个数组就行了.下面直接看例子吧,这是一个两行表头的,按照此方法,还可以设置三行表 ...

  9. 让easyui datagrid支持bootstrap的tooltip

    让easyui datagrid支持bootstrap的tooltip 发表于 下午 1:53 by ylpro.net & 分类 Java. Easyui在1.3.3版本之前是不支持tool ...

随机推荐

  1. 简单说说.Net中的弱引用

    弱引用是什么? 要搞清楚什么是弱引用,我们需要先知道强引用是什么.强引用并不是什么深奥的概念,其实我们平时所使用的.Net引用就是强引用.例如: Cat kitty = new Cat(); 变量ki ...

  2. PHP date函数时间相差8个小时解决办法

    php中date时间相差8个小时的解决办法 作者: PHP中文网|标签:|2016-7-25 08:46 在Windows上,在默认的PHP配置下,date函数返回的时间值和当地时间总是相差8小时,即 ...

  3. Python之路第一课Day10--随堂笔记(异步IO\数据库\队列\缓存)

    本节内容 Gevent协程 Select\Poll\Epoll异步IO与事件驱动 Python连接Mysql数据库操作 RabbitMQ队列 Redis\Memcached缓存 Paramiko SS ...

  4. CF2.E

    E. Comments time limit per test 2 seconds memory limit per test 256 megabytes input standard input o ...

  5. Ubuntu中的快捷键

    Ubuntu中的许多操作在终端(Terminal)中十分的快捷,记住一些快捷键的操作更得心应手. 在Ubuntu中打开终端的快捷键是Ctrl+Alt+T.其他的一些常用的快捷键如下: 快捷键 功能 T ...

  6. mongodb的修改器

    在mongodb中通常文档只会有一部分要更新,利用原子的更新修改器,可以做到只更新文档的一部分键值,而且更新极为高效,更新修改器是种特殊的键,用来指定复杂的更新操作,比如调整.增加.或者删除键,还可以 ...

  7. SQL存储过程基础(从基础开始学,加油!)

    Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这样就可以提高存储过程的性能. Ø ...

  8. STL之priority_queue

    下面以 long long 型队列介绍: Q.empty() // 判断队列是否为空 返回ture表示空 返回false表示空 bool Q.top() // 返回顶端元素的值 元素还在队列里 lon ...

  9. Python基本数据类型——str

    字符串常用操作 移除空白 分割 长度 索引 切片 class str(basestring): """ str(object='') -> string Retur ...

  10. JAVA演算法---約瑟夫問題

    1 public class Josephus { public static int[] arrayOfJosephus( int number, int per) { 3 int[] man = ...