.net+EasyUI+datagrid DEMO

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值