第一篇学的是做一个管理的外框,接着就是数据datagrid绑定了,这里我用asp.net mvc3来做的,主要就是熟悉属性、方法。

打开easyui的demo 就可以看到如下一段代码:

和上篇一样class="easyui-datagrid", data-options="...",这是一样的,其他我在网上查了查,并做了整理

DataGrid 属性

参数名 类型 描述 默认值
title string Datagrid面板的标题 null
iconCls string 在面板上通过一个CSS类显示16x16图标。 null
border boolean 设置面板是否具有边框 TRUE
width number datagrid面板的宽度 auto
height number datagrid面板的高度 auto
columns array DataGrid列配置对象 null
frozenColumns array 冻结的列,被现实在左边 null
striped boolean 设置是否让单元格显示条纹。默认false。 FALSE
method string 通过该方法类型请求远程数据。默认post。 post
nowrap boolean 是否包裹数据,默认为包裹数据显示在一行 TRUE
idField string 标识字段,或者说主键字段 null
url string 请求数据的URL.(josn格式) null
loadMsg string 加载数据时显示的信息 Processing, please wait …
pagination boolean 是否显示分页工具栏 FALSE
rownumbers boolean 是否显示行号 FALSE
singleSelect boolean 是否单行选定 FALSE
fit boolean 是否自动适应父容器 FALSE
pageNumber number 分页初始化行号 1
pageSize number 初始化分页大小 10
pageList array 分页大小选择列 [10,20,30,40,50]
queryParams object 请求数据时额外发送的参数 {}
sortName string 排序列 null
sortOrder string 升序还是降序 'asc' 或者 'desc'. asc
toolbar string 工具栏(绑定新增,查询按钮...) null

Column 属性

名称 类型 描述 默认值
title string 列字段要现实的名称 undefined
field string 列字段 undefined
width number 宽度 undefined
rowspan number 单元格行数 undefined
colspan number 单元格列数 undefined
align string 文本对齐方式,同align属性. undefined
sortable boolean 是否可以被排序. undefined
checkbox boolean 是否具有多选框 undefined
formatter class 方法  

注:formatter:function (value, rowData, rowIndex){}

//value 这个field绑定的值   rowData 这行数据内容  rowIndex 选择行的行号

columns: [[
    { field: 'Id', title: '编号', width: 100, sortable: true },
    { field: 'ClassName', title: '类型名称', width: 150, sortable: true },
    { field: 'ClassDescribe', title: '描述', width: 150, sortable: true },
    { field: 'Id', title: '操作', width: 150, sortable: true, formatter: formatOper 
 
function formatOper(index) {
     return "<a href=\"javascript:void(0)\"  onclick=\"UsDelete(" + index + ")\">删除</a>"; 
}

Events(事件)

Name Parameters Description
onLoadSuccess  none 调用远程数据成功是激活
onLoadError none 装载错误时激活
onClickRow rowIndex , rowData  点击一行时激活,参数包括:
rowIndex:点击的行数,从0开始
rowData: 当前行的数据
onDblClickRow rowIndex ,rowData 双击一行是触发,参数包括:
rowIndex:点击的行数,从0开始
rowData: 当前行的数据
onSortColumn sort,order 对一列进行排序时激活,参数包括:
sort:排序字段名称
order: 排序规则,升序,降序
onSelect rowIndex,rowData 选中一行时激活,参数有:
rowIndex:选中的行数
rowData: 数据
onUnselect rowIndex,rowData 取消选中时激活,参数:
rowIndex:选中的行数
rowData: 数据
onDblClickRow: function (rowIndex, rowData) { //双击事件
 
}

Methods(方法)

Name Parameter Description
options none 返回所有属性
resize none 重置大小布局
reload none 重新加载数据
fixColumnSize none 调整列的大小
loadData param 装载数据,以前的数据会被移除
getSelected none 返回选中的行,没有则返回空
getSelections none 返回所有的行,空则返回空数组
clearSelections  none 取消所有选中
selectRow index 选中一行,参数为行号
selectRecord idValue 根据主键查询出一条记录
unselectRow index 取消选中一行
刷新datagird的两种方法:
1.grid.datagrid('reload');
2.grid.datagrid({ url:'/Admin/SeachProductTypeInfo?Id='+ 6});//带参数查询(刷新datagrid数据)
 
代码如下:
<div id="grid" class="easyui-grid" ></div>
<div id="EditDig" class="easyui-dialog" title="用户修改" style="width:400px;height:350px;" closed="true" id="EditForm">
<div id="info" closed="true" class="easyui-window"></div> </div>
<script type="text/javascript">
$(function () {
$("#grid").datagrid({
title: "用户列表",
iconCls: 'icon-save',
methord: 'get',
url: "/CrmUser/GetUserList/",
sortName: 'Id',
sortOrder: 'desc',
idField: 'Id',
border: true,
width: ,
height: ,
columns: [[
{ field: "LoginEmail", title: "登陆邮箱", sortable: true, width: },
{ field: "PassWord", title: "密码", sortable: true, width: },
{ field: "TrueName", title: "真实姓名", sortable: true, width: },
{ field: "Phone", title: "手机号码", sortable: true, width: },
{ field: "UserCard", title: "身份证", sortable: true, width: },
{ field: "NickName", title: "昵称", sortable: true, width: },
{ field: "QQ", title: "QQ号码", sortable: true, width: },
{ field: "LastLoginTime", title: "最后登陆时间", sortable: true, width: , formatter: formatDatebox },
{ field: "CreateOn", title: "创建时间", sortable: true, width: , formatter: formatDatebox },
{ field: "UpdateBy", title: "修改人", sortable: true, width: },
{ field: "UpdateOn", title: "修改时间", sortable: true, width: , formatter: formatDatebox },
{ field: 'Id', title: '操作', width: , align: 'center', formatter: function (value,rowIndex) {
var s = '<a href="#" onclick="view(\'' + value + '\')">查看</a> ';
var e = '<a href="#" onclick="edit(\'' + value + '\')">编辑</a> ';
var d = '<a href="#" onclick="del(\'' + value + '\')">删除</a> ';
return s + e + d;
}
}
]],
// frozenColumns: [[
// { field: "CreatorId",title:"创建人ID",sortable:true,width:100 }
// ]],
toolbar: [{
text: '新增',
iconCls: 'icon-add',
handler: edit
}, '-', {
text: '用户名:&nbsp;<input type="text" id="username" style="height:18px; width: 100px;line-height: 18px; "/>'
}, '-', {
text: '邮件:&nbsp;<input type="text" id="email" style="height:18px; width: 100px;line-height: 18px; "/>'
}, '-', {
text: '查找',
iconCls: 'icon-search',
handler: search
}],
pagination: true,
fit: true,
fitColumns: true,
singleSelect: true });
}); //查询
function search() {
$("#grid").datagrid({
url: "/CrmUser/GetUserList/?userName="+$("#username").val()+"&email="+$("#email").val(),
});
}
//查看
function view(pId) {
} //修改
function edit(pId) {
} //删除
function del(pId) {
} //做时间转换
function formatDatebox(value) {
if (value == null || value == '') {
return '';
}
var dt;
if (value instanceof Date) {
dt = value;
}
else {
dt = new Date(value);
if (isNaN(dt)) {
value = value.replace(/\/Date\((-?\d+)\)\//, '$1'); //标红的这段是关键代码,将那个长字符串的日期值转换成正常的JS日期格式
dt = new Date();
dt.setTime(value);
}
}
return dt.format("yyyy-MM-dd"); //这里用到一个javascript的Date类型的拓展方法,这个是自己添加的拓展方法,在后面的步骤3定义
} Date.prototype.format = function (format) {
var o = {
"M+": this.getMonth() + , //month
"d+": this.getDate(), //day
"h+": this.getHours(), //hour
"m+": this.getMinutes(), //minute
"s+": this.getSeconds(), //second
"q+": Math.floor((this.getMonth() + ) / ), //quarter
"S": this.getMilliseconds() //millisecond
};
if (/(y+)/.test(format))
format = format.replace(RegExp.$,
(this.getFullYear() + "").substr( - RegExp.$.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(format))
format = format.replace(RegExp.$,
RegExp.$.length == ? o[k] :
("" + o[k]).substr(("" + o[k]).length));
return format;
}; function d_close() {
$('#EditDig').dialog('close');
};
</script>

Jquery Easy UI--datagrid的使用(转)的更多相关文章

  1. JQuery Easy Ui dataGrid 数据表格 ---制作查询下拉菜单

    JQuery Easy Ui dataGrid 数据表格 数据表格 - DataGrid 继承$.fn.panel.defaults,使用$.fn.datagrid.defaults重载默认值.. 数 ...

  2. Jquery Easy UI Datagrid 上下移动批量保存数据

    DataGrid with 上下移动批量保存数据 通过前端变量保存修改数据集合,一次性提交后台执行 本想结合easyui 自带的$('#dg').datagrid('getChanges'); 方法来 ...

  3. jquery Easy UI Datagrid(数据网格)学习心德,附API

    第一步,引入主要的css样式和js文件 <meta http-equiv="Content-Type" content="text/html; charset=ut ...

  4. JQuery Easy Ui DataGrid

    Extend from $.fn.panel.defaults. Override defaults with $.fn.datagrid.defaults. The datagrid display ...

  5. JQuery Easy Ui dataGrid 数据表格

    数据表格 - DataGrid 英文文档:http://www.jeasyui.com/documentation/index.php# 继承$.fn.panel.defaults,使用$.fn.da ...

  6. JQuery Easy Ui dataGrid 数据表格 -->转

    转至: http://www.cnblogs.com/cnjava/archive/2013/01/21/2869876.html#events 数据表格 - DataGrid 内容 概况 使用方法 ...

  7. Jquery easy ui datagrid動態加載列問題

    1.如下图效果是当选择不同的日期范围时datagrid则会加载出对应的列数

  8. jquery easy ui datagrid中遇到的坑爹的問題。。。

    ; //修改 function Update() { //獲取選中行 var selected = $("#dg1").datagrid('getSelected'); //判斷是 ...

  9. Jquery easy UI 上中下三栏布局 分类: ASP.NET 2015-02-06 09:19 368人阅读 评论(0) 收藏

    效果图: 源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

  10. JQuery Easy Ui (Tree树)详解(转)

    第一讲:JQuery Easy Ui到底是什么呢? 首先咱们知道JQuery是对Java Script的封装,是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等.. JQuery ui是在j ...

随机推荐

  1. 100行JS实现HTML5的3D贪吃蛇游戏

    js1k.com收集了小于1k的javascript小例子,里面有很多很炫很酷的游戏和特效,今年规则又增加了新花样,传统的classic类型基础上又增加了WebGL类型,以及允许增加到2K的++类型, ...

  2. 使用VS2010开发Qt程序的一点经验

    导读 相比于Qt Creator,我更喜欢用VS2010来进行开发.虽然启动时间相对较慢,但是VS下强大的快捷键和丰富的插件,以及使用多年的经验,都让我觉得在开发过程中得心应手.其中最重要的一点是,有 ...

  3. private、 protected、 public、 internal 修饰符

    private : 私有成员, 在类的内部才可以访问. protected : 保护成员,该类内部和继承类中可以访问. public : 公共成员,完全公开,没有访问限制. internal: 在同一 ...

  4. Java知识点总结(不定时更新)

    1.基于分代的垃圾收集算法 设计思路:把对象按照寿命长短来分组,分为年轻代和年老代,新创建的对象被分在年轻代,如果对象经过几次回收后仍然存活,那么再把这个对象划分到年老代.年老代的收集频率不像年轻代那 ...

  5. C# 生成XML空元素/空节点自动换行解决方案

    使用DataSet可以直接输出XML,并可指定是否带有Schema: ds.WriteXml(XMLFile,XmlWriteMode.WriteSchema ) 不过,这样将不会输出值为Null的字 ...

  6. 关于WPF绘图中的path.data在后台重新赋值的语法

    //XAML语法 <Path Name="path_M" Fill="LawnGreen" Data="M 0 0 L 100 0 L 100 ...

  7. 找到MVC框架中前端URL与后端同步的解决方案

    基本思路: 先用URL标签生成完整的URL字符,前端动态参数的部分以适配符先填充,最后动态参数利用正则匹配进行替换. 这种方式,可以在各种MVC框架中适用,妙. 不废话,上码. var url = & ...

  8. js倒计时防页面刷新

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 优秀程序设计的Kiss原则(keep it simple,stupid)

    优秀程序设计的Kiss原则(keep it simple,stupid) 良好的编程原则与良好的设计工程原则密切相关.本文总结的这些设计原则,帮助开发者更有效率的编写代码,并帮助成为一名优秀的程序员. ...

  10. 最近提交并被合并的 jDiameter pull request 31 解决的问题

    使用过程中发现的问题都提交并合并了,应该会出现在1.7.0版本中: https://github.com/RestComm/jdiameter/pull/31 修复多个超时事件同时发生的问题. 修复B ...