博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JQuery EasyUI的datagrid的使用方式总结
阅读量:6080 次
发布时间:2019-06-20

本文共 3929 字,大约阅读时间需要 13 分钟。

JQuery EasyUI的datagrid的使用方式总结

第一步:添加样式和js脚本在前台添加展示数据表格的table元素
例如:
<div>
<table id="tt" style="width: 700px;" title="标题,可以使用代码进行初始化,也可以使用这种属性的方式" iconcls="icon-edit">
</table>
</div>
注:表格的属性可以在table中设置(Unobtrusive),也可以直接使用js脚本进行控制。建议使用js脚本控制
属性的定义:
请参见Jquery easyui API
第二步:在doucment.ready中初始化表格的属性以及数据获取的方式。
例如:
$('#tt').datagrid({
url: '/UserInfo/GetAllUserInfos',
title: '演示表格使用',
width: 700,
height: 400,
fitColumns: true,
idField: 'ID',
loadMsg: '正在加载用户的信息...',
pagination: true,
singleSelect: false,
pageSize:10,
pageNumber:1,
pageList: [10, 20, 30],
queryParams: {},
columns: [[
{ field: 'ck', checkbox: true, align: 'left', width: 50 },
{ field: 'ID', title: '主键', width: 80 },
{ field: 'UserName', title: '用户名', width: 120 },
{ field: 'SubTime', title: '提交时间', width: 80, align: 'right',
formatter:function(value,row,index){
return (eval(value.replace(/\/Date\((\d+)\)\//gi, "new Date($1)"))).pattern("yyyy-M-d h:m:s.S");
}
},
{field:'showprice',title:'商品价格',width:80,align:'right',
styler:function(value,row,index){
if (value < 20){
return 'background-color:#ffee00;color:red;';
}
},
formatter:function(value,row,index){
return "<a href='#' οnclick='editGoodsPrice("+row.goodsid+");return false;'>"+value+"</a>";
}
}
]],
toolbar: [{
id: 'btnDownShelf',
text: '上架',
iconCls: 'icon-add',
handler: function () {
var rows = $('#goodGrid').datagrid('getSelections');
if (!rows || rows.length == 0) {
//alert("请选择要修改的商品!");
$.messager.alert("选择商品提醒", "请选择要修改的商品!", "error");
return;
}
$.messager.confirm("上架提醒", "您是否要真的要将此商品上架?", function (r) {
if (r) {
updateGoodsNewHot(rows, "onshelf");
}
});
}
}],
onHeaderContextMenu: function (e, field) {

}

});
第三步:后台设置加载的数据:

注意:表格Post或者get回来的请求中

page:3 代表page为key,然后选择的当前页码为3
rows:10 代表一页的大小为10
后台返回的数据的格式为:{total:'',rows:[{},{}]}
只要包含了总数tatol字段,rows是具体的行数
例如:
Asp.Net MVC 例子:
public JsonResult GetAllUserInfos()
{
int pageSize = 5;
int pageIndex = 1;
int.TryParse(this.Request["page"], out pageIndex);
int.TryParse(this.Request["rows"], out pageSize);

pageSize = pageSize <= 0 ? 5 : pageSize;

pageIndex = pageIndex < 1 ? 1 : pageIndex;

var temp = db.UserInfo

.OrderBy(u=>u.Sort)
.Skip<UserInfo>((pageIndex-1)*pageSize)
.Take<UserInfo>(pageSize)
.ToList<UserInfo>();
Hashtable ht = new Hashtable();
ht["total"] = db.UserInfo.Count();
ht["rows"] = temp;
return Json(ht);
}
Asp.Net WebForm 例子:
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
var strWebName = context.Request["WebName"] ?? string.Empty;
var GoodsNo = context.Request["GoodsNo"] ?? string.Empty;
int categoryId = 0;

int pageIndex = 1;

int pageSize = 10;

int.TryParse(context.Request["rows"], out pageSize);

int.TryParse(context.Request["page"], out pageIndex);

decimal priceLeft = 0;

decimal priceRight = 1000000;
int goodsStatus = 0;
decimal.TryParse(context.Request["PriceLeft"], out priceLeft);
decimal.TryParse(context.Request["PriceRight"], out priceRight);
int.TryParse(context.Request["CategoryId"], out categoryId);
int.TryParse(context.Request["GoodsStatus"], out goodsStatus);
var goodsQueryParamter = new GoodsQueryParamter();
goodsQueryParamter.GoodsStatus = (Model.GoodsModel.GoodsStatusEnum)goodsStatus;

var ds = goodsService.GetGoodsList(goodsQueryParamter);

string json = string.Empty;

if (ds != null && ds.Tables.Count > 0)

{
System.Text.StringBuilder rowJson = new System.Text.StringBuilder();
int colLen = ds.Tables[0].Columns.Count;
DataColumnCollection col = ds.Tables[0].Columns;
foreach (DataRow row in ds.Tables[0].Rows)
{
System.Text.StringBuilder colJson = new System.Text.StringBuilder();
rowJson.Append("{");
for (int i = 0; i < colLen; i++)
{
colJson.Append("\"" + col[i].ColumnName + "\":\"" + row[i].ToString() + "\",");
}
rowJson.Append(colJson.ToString().TrimEnd(','));
rowJson.Append("},");
}
json = "{\"total\":" + ds.Tables[0].Rows[0]["sumGoods"] + ",\"rows\":[" + rowJson.ToString().TrimEnd(',') + "]}";
}
context.Response.Write(json);
}

转载地址:http://agzwa.baihongyu.com/

你可能感兴趣的文章
我的友情链接
查看>>
老板不希望手下通晓的大道理
查看>>
第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
查看>>
windows下安装MongoDB
查看>>
Do not request Window.FEATURE_SUPPORT_ACTION_BAR
查看>>
boot分区误删除,如何修复
查看>>
bootstrap中表格固定头部:
查看>>
<c:set> 用法
查看>>
为什么Windows会蓝屏(Blue Screen Of Death)?
查看>>
Sublime Text2 多行编辑快捷键
查看>>
我的友情链接
查看>>
解释代码(n&(n-1))==0的具体含义
查看>>
FFmpeg init_input函数剖析
查看>>
git的基本使用
查看>>
Docker容器技术和传统虚拟机技术的特性比较
查看>>
我的友情链接
查看>>
Windows socket
查看>>
使用非root用户启动tomcat
查看>>
撤销本地提交 未push
查看>>
mysqlbinlog 可视化查看sql语句
查看>>