1.
<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.Creat Table-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); }
8.End.