.net+EasyUI+datagrid DEMO

来源:互联网 发布:仿淘宝app首页 编辑:程序博客网 时间:2024/05/23 22:30

1.Html代码:

<table id="mTab" iconcls="icon-edit" singleSelect="true" idField="Item04" title="EasyUI-Grid" \><thead><tr><th field="Item03" width="30" align="center">序号</th><th field="Item04" width="500" editor="text">工作任务</th><th field="Item05" width="100" align="right" formatter="JoinFormatter" editor="{type:'combobox',options:{valueField:'sValue',textField:'name',data:_Join,editable:false}}">协办</th>"<th field="Item06" width="90" align="right" editor="datebox">日期</th><th field="Item07" width="75" formatter="LeaderFormatter" editor="{type:'combobox',options:{valueField:'sValue',textField:'name',data:_Leader,editable:false}}">领导</th>"<th field="Item08" width="60" align="center">报告</th></tr></thead></table>


2.Js代码

    function CreatTable(t) {        var $t = $('#mTab');        var lastIndex;        $t.datagrid({            width: 900,            height: 320,            fitColumns: false,            nowrap: false,            collapsible: true,            collapsed: false,            frozenColumns: [[                { field: 'ck', checkbox: true }]],            pagination: true,            toolbar: [{                text: '新增',                iconCls: 'icon-add',                handler: function () {                    $t.datagrid('endEdit', lastIndex);                    var CurIndex = $t.datagrid('getRows').length+1;                    $t.datagrid('appendRow', {                        Item03: CurIndex,                        Item04: '',                        Item05: '',                        Item06: '',                        Item07: ''                    });                    lastIndex = $t.datagrid('getRows').length - 1;                    $t.datagrid('selectRow', lastIndex);                    $t.datagrid('beginEdit', lastIndex);                }            }, '-', {                text: '删除',                iconCls: 'icon-remove',                handler: function () {                    if (confirm("确定删除吗?")) {                        var row = $t.datagrid('getSelected');                        if (row) {                            var index = $t.datagrid('getRowIndex', row);                            $t.datagrid('deleteRow', index);                            btnOnDel(_id, t, row.Item03);                        }                    }                    else {                    }                }            }, '-', {                text: '保存草稿',                iconCls: 'icon-save',                handler: function () {                    var rowData = $t.datagrid('getSelected');                    $t.datagrid('acceptChanges');                    btnOnSave(_id, t, rowData);                }            }],            onBeforeLoad: function () {                $(this).datagrid('rejectChanges');            },            onDblClickRow: function (rowIndex) {                if (lastIndex != rowIndex) {                    $t.datagrid('endEdit', lastIndex);                    $t.datagrid('beginEdit', rowIndex);                }                lastIndex = rowIndex;            },            onAfterEdit: function (rowIndex, rowData, changes) {//编辑完触发                btnOnSave(_id, t, rowData);            }        });        var p = $t.datagrid('getPager');//分页        $(p).pagination({            total: 0,            pageList: [8, 15, 30, 50, 200],            onBeforeRefresh: function () {            },            onSelectPage: function (pageNumber, pageSize) {//分页触发                GetWorkListByDep(t, _id, pageNumber - 1, pageSize);            }        });    }


 

3.Load Data

function GetWorkListByDep(t,id, pageNumber, pageSize) {        var $t = $('#mTab');              Ajax_Work.GetWorkListByDep(id, t, pageNumber, pageSize, GetWorkListByDep_CallBack);        function GetWorkListByDep_CallBack(response) {            EZWaitBox.hide();            var obj = jQuery.parseJSON(response.value);            if (obj.returnValue == 0) {                $t.datagrid('loadData', obj);            }            else {                alert(obj.error);            }        }    }


 

4.Save Data

 function btnOnSave(id,t,rowData) {        Ajax_Work.UpdatePWokM002(id, t, JSON.stringify(rowData), UpdatePWokM002_Back);        function UpdatePWokM002_Back(ret){        }    }


 

5.Delete Data

 function btnOnDel(id,t,sno) {        Ajax_Work.DeletedatePWokM002(id, t, sno);    }


 

6.DropDownList Binding

 var _Leader = [];    function LeaderFormatter(value) {        for (var i = 0; i < _Leader.length; i++) {            if (_Leader[i].sValue == value) return _Leader[i].name;        }        return value;    }    var _Join=[];     function JoinFormatter(value) {        for (var i = 0; i < _Join.length; i++) {            if (_Join[i].sValue == value) return _Join[i].name;        }        return value;    }


 

7.cs

[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]        public static string GetWorkListByDep(string id, string sNode, string pageNumber, string pageSize)//id-计划ID sNode-责任主体        {            try            {                int PageSize = 8;                int nPageIndex = 0;                if (pageNumber != "")                {                    nPageIndex = Lanall.EasyConvert.ToInt32(pageNumber);                }                if (pageSize != "")                {                    PageSize = Lanall.EasyConvert.ToInt32(pageSize);                }                Lanall.Data.AccessQuery query = new Lanall.Data.AccessQuery();                query.maxRecords = PageSize;                query.startRecord = PageSize * nPageIndex;                AjaxPro.JavaScriptArray dataItems = new JavaScriptArray();                string sFilter = " Item01="+Lanall.EasySQL.QuotedString(id)                    + " AND  Item02=" + Lanall.EasySQL.QuotedString(sNode);                sFilter = "";                string sOrder = " Item03  ";                PWokM002Data data = PWokM002System.GetPWokM002Data(CSContext.Current.User.Comp, sFilter, sOrder, query);                int itotal = query.TotalRecords;                foreach (DataRow row in data.Tables[PWokM002Data.TABLE_PWokM002].Rows)                {                    string dTime = "";                    if (row["Item06"].ToString() != "")                    {                        dTime = Convert.ToDateTime(row["Item06"].ToString()).ToString("yyyy-MM-dd");                    }                    string sItem08 = string.Format("<a href=\"javascript:void(0);\" onClick=\"btnItem08('{0}','{1}','{2}')\"> 设置</a>",                        id, sNode, row["Item03"].ToString());                    JavaScriptObject dataItem = new JavaScriptObject();                    dataItem.Add("Item03", new JavaScriptString(row["Item03"].ToString()));                    dataItem.Add("Item04", new JavaScriptString(row["Item04"].ToString()));                    dataItem.Add("Item05", new JavaScriptString(row["Item05_Caption"].ToString()));                    dataItem.Add("Item06", new JavaScriptString(dTime));                    dataItem.Add("Item07", new JavaScriptString(row["Item07_Caption"].ToString()));                    dataItem.Add("Item08", new JavaScriptString(sItem08));                    dataItems.Add(dataItem);                }                if (query.TotalRecords < PageSize)                {                    itotal = PageSize;                    for (int i = data.Tables[PWokM002Data.TABLE_PWokM002].Rows.Count; i < PageSize; i++)                    {                        string sItem08 = string.Format("<a href=\"javascript:void(0);\" onClick=\"btnItem08('{0}','{1}','{2}')\"> 设置</a>",                        id, sNode, (i+1).ToString());                        JavaScriptObject dataItem = new JavaScriptObject();                        dataItem.Add("Item03", new JavaScriptNumber(i + 1));                        dataItem.Add("Item04", new JavaScriptString(""));                        dataItem.Add("Item05", new JavaScriptString(""));                        dataItem.Add("Item06", new JavaScriptString(""));                        dataItem.Add("Item07", new JavaScriptString(""));                        dataItem.Add("Item08", new JavaScriptString(sItem08));                        dataItems.Add(dataItem);                    }                }                JavaScriptObject jdataReturn = new JavaScriptObject();                jdataReturn.Add("returnValue", new JavaScriptNumber(0));                jdataReturn.Add("total", new JavaScriptNumber(itotal));                jdataReturn.Add("rows", dataItems);                StringBuilder ss = new StringBuilder();                AjaxPro.JavaScriptSerializer.Serialize(jdataReturn, ss);                return ss.ToString();            }            catch (Exception e)            {                JavaScriptObject jdataReturn = new JavaScriptObject();                jdataReturn.Add("returnValue", new JavaScriptNumber(1));                jdataReturn.Add("error", new JavaScriptString(e.Message));                StringBuilder ss = new StringBuilder();                AjaxPro.JavaScriptSerializer.Serialize(jdataReturn, ss);                return ss.ToString();            }        }        [Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]        public void UpdatePWokM002(string id, string DepID, string sPostData)        {            string sItem03 = "";            string sItem04 = "";            string sItem05 = "";            string sItem06 = "";            string sItem07 = "";            AjaxPro.JavaScriptObject PostData;            PostData = (AjaxPro.JavaScriptObject)AjaxPro.JavaScriptDeserializer.DeserializeFromJson(sPostData, typeof(AjaxPro.JavaScriptObject));            if (PostData != null)            {                sItem03 = PostData["Item03"].Value.ToString().Replace("\"", "");                sItem04 = PostData["Item04"].Value.ToString().Replace("\"", "");                sItem05 = PostData["Item05"].Value.ToString().Replace("\"", "");                sItem06 = PostData["Item06"].Value.ToString().Replace("\"", "");                sItem07 = PostData["Item07"].Value.ToString().Replace("\"", "");            }            string sFilter = " Item01=" + Lanall.EasySQL.QuotedString(id)                + " AND Item02=" + Lanall.EasySQL.QuotedString(DepID)                + " AND Item03=" + Lanall.EasySQL.QuotedString(sItem03);            PWokM002Data data = PWokM002System.GetPWokM002Data(CSContext.Current.User.Comp, sFilter, "", null);            if (data.Tables[PWokM002Data.TABLE_PWokM002].Rows.Count > 0)            {                DataRow row = data.Tables[PWokM002Data.TABLE_PWokM002].Rows[0];                row[PWokM002Data.FIELD_Item04] = sItem04;                row[PWokM002Data.FIELD_Item05] = sItem05;                if (sItem06 != "")                    row[PWokM002Data.FIELD_Item06] = sItem06;                else                    row[PWokM002Data.FIELD_Item06] = System.DBNull.Value;                row[PWokM002Data.FIELD_Item07] = sItem07;                PWokM002System.UpdatePWokM002Data(CSContext.Current.User.Comp,data);            }            else            {                DataRow row = data.Tables[PWokM002Data.TABLE_PWokM002].NewRow();                row[PWokM002Data.FIELD_Item00] = CSContext.Current.User.Comp.CompID;                row[PWokM002Data.FIELD_Item01] = id;                row[PWokM002Data.FIELD_Item02] = DepID;                row[PWokM002Data.FIELD_Item03] = sItem03;                row[PWokM002Data.FIELD_Item04] = sItem04;                row[PWokM002Data.FIELD_Item05] = sItem05;                if (sItem06 != "")                    row[PWokM002Data.FIELD_Item06] = sItem06;                else                    row[PWokM002Data.FIELD_Item06] = System.DBNull.Value;                row[PWokM002Data.FIELD_Item07] = sItem07;                data.Tables[PWokM002Data.TABLE_PWokM002].Rows.InsertAt(row, 0);                PWokM002System.UpdatePWokM002Data(CSContext.Current.User.Comp, data);            }        }        [Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]        public void DeletedatePWokM002(string id, string DepID, string sNo)        {            string sFilter = " Item01=" + Lanall.EasySQL.QuotedString(id)                + " AND Item02=" + Lanall.EasySQL.QuotedString(DepID)                + " AND Item03=" + Lanall.EasySQL.QuotedString(sNo);            PWokM002System.DeletePWokM002ByID(CSContext.Current.User.Comp, sFilter);        }

 

 


 文章出处

 

 

 

 

 

 

 

 

 

 

 

===========================================================================================

===========================================================================================

 //设置分页控件      var p = $('#list_data').datagrid('getPager');      $(p).pagination({          pageSize: 10,//每页显示的记录条数,默认为10          pageList: [5,10,15],//可以设置每页记录条数的列表          beforePageText: '第',//页数文本框前显示的汉字          afterPageText: '页    共 {pages} 页',          displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录',          /*onBeforeRefresh:function(){             $(this).pagination('loading');             alert('before refresh');             $(this).pagination('loaded');         }*/     }); 

http://www.cnblogs.com/huozhicheng/archive/2011/09/27/2193605.html