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