这是随便写的一个例子,其中主要为大家演示了一些常用操作:
页面效果如下:
代码如下:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>jQuery EasyUI</title> <!-- 引入css --> <link rel="stylesheet" type="text/css" href="../js/jqGrid/themes/redmond/jquery-ui-1.8.2.custom.css"> <link rel="stylesheet" type="text/css" href="../js/jqGrid/themes/ui.jqgrid.css"> <link rel="stylesheet" type="text/css" href="../js/jqGrid/themes/ui.multiselect.css"> <!-- 引入js 顺序:jquery、jquery-ui、grid.locale-cn、jqGrid --> <script type="text/javascript" src="../js/jqGrid/js/jquery.min.js"></script> <script type="text/javascript" src="../js/jqGrid/js/jquery-ui-1.8.2.custom.min.js"></script> <script type="text/javascript" src="../js/jqGrid/js/i18n/grid.locale-cn.js"></script> <script type="text/javascript" src="../js/jqGrid/js/jquery.jqGrid.min.js"></script> <script type="text/javascript" src="../js/jqGrid/js/grid.common.js"></script> <script> $(function(){ $("#list4").jqGrid({ url:'', datatype: "local", height: 250, colNames:['Check','InvNo','Date', 'Client', 'Amount','Tax','Total','Notes','Modify','Delete'], colModel:[ {name:'title',index:'title',width:60, align:"center", formatter:function(cellvalue, options, rowObject){ return "<input type='radio' name='myId' value='"+cellvalue+"' onclick=\"radioSelect('myId', 'listTable')\" />"; } }, {name:'id',index:'id', width:60, sorttype:"int"}, {name:'invdate',index:'invdate', width:90, sorttype:"date"}, {name:'name',index:'name', width:100, cellattr:function(rowId, val, rawObject, cm, rdata) { return "style='color:red;font-weight:bold;text-decoration:underline'"; } }, {name:'amount',index:'amount', width:80, align:"right",sorttype:"float"}, {name:'tax',index:'tax', width:80, align:"right",sorttype:"float"}, {name:'total',index:'total', width:80,align:"right",sorttype:"float"}, {name:'note',index:'note', width:150, sortable:false}, {name:'operMod',index:'operMod',align:"center",width:"80", formatter: function (value, grid, rows, state) { return "<a href=\"#\" style=\"color:#f60\" onclick=\"Modify(" + value + ")\">Edit</a>" } }, {name:'operDel',index:'operDel', width:80,align:"center"} ], rownumbers:true, rownumWidth:40, caption: "Manipulating Array Data", gridComplete: function () { var ids = jQuery("#list4").jqGrid("getDataIDs"); for (var i = 0; i < ids.length; i++) { var id = ids[i]; modify = "<a href=\"#\" style=\"color:#f60\" onclick=\"Delete(" + id + ")\">Delete</a>"; jQuery("#list4").jqGrid("setRowData", id, { operDel: modify }); } } }); var mydata = [ {id:"1",invdate:"2007-10-01",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"2",invdate:"2007-10-02",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"3",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}, {id:"4",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"5",invdate:"2007-10-05",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"6",invdate:"2007-09-06",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}, {id:"7",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"8",invdate:"2007-10-03",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"9",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"} ]; for(var i=0;i<=mydata.length;i++) $("#list4").jqGrid('addRowData',i+1,mydata[i]); }); </script> </head> <body> <table id="list4"></table> <div id="pager"></div> </body> </html>
在这个例子中,有一下几个知识点:
1)设置No自增列:
colNames和colModel中不需要做任何设置,只需要添加 rownumbers:true,另外rownumWidth:40是设置这一列的宽度值。
rownumbers:true, rownumWidth:40,
2)添加一个radioButton列:
在formatter中添加function,返回一个html字符串
{name:'title',index:'title',width:60, align:"center", formatter:function(cellvalue, options, rowObject){ return "<input type='radio' name='myId' value='"+cellvalue+"' onclick=\"radioSelect('myId', 'listTable')\" />"; } },
3)给行内添加按钮:
方法一:在colModel中的列属性中添加:
{name:'operMod',index:'operMod',align:"center",width:"80", formatter: function (value, grid, rows, state) { return "<a href=\"#\" style=\"color:#f60\" onclick=\"Modify(" + value + ")\">Edit</a>" } }
方法二:在gridComplete中添加:
gridComplete: function () { var ids = jQuery("#list4").jqGrid("getDataIDs"); for (var i = 0; i < ids.length; i++) { var id = ids[i]; modify = "<a href=\"#\" style=\"color:#f60\" onclick=\"Delete(" + id + ")\">Delete</a>"; jQuery("#list4").jqGrid("setRowData", id, { operDel: modify }); } }
4)改变list中某一列数据的样式,例如颜色,字体等
利用列的cellattr属性:
{name:'name',index:'name', width:100, cellattr:function(rowId, val, rawObject, cm, rdata) { return "style='color:red;font-weight:bold; text-decoration:underline'"; } }
5)关于jqGrid的theme, 从3.5版本开始,jqGrid完全支持jquery UI的theme。我们可以从http://jqueryui.com/themeroller/下载我们所需要的theme
6)关于datatype: "local"
jqGrid可支持的数据类型:xml、json、jsonp、local or clientSide、xmlstring、jsonstring
、script、function (…)。
在初始化的时候,若不想执行表格的初始化方法,则需要设置url为空,datatype设置为"local",否则会有js错误,导致页面上的button按钮不起作用
设置url的值,在.net mvc架构下,即“/controller/action/”这样的格式,第一个"/"是必须的,否则不能进入后台的action中。
在设置了url后,还要注意的问题就是datatype要与postData的数据类型相匹配,否则会有错误。例如datatype:"json",那么postData需要传的是json对象。
最后,例子很随意,凑合着看吧
相关推荐
以下是对jqGrid常用属性的详细说明: 1. **colModel**:这是jqGrid最重要的配置之一,用于定义表格列的属性。每个列都有一个对象,包含列名(name)、标题(title)、宽度(width)等属性,还可以设置是否可编辑...
jqGrid的核心功能依赖于一系列插件,如`grid.custom.js`、`grid.formedit.js`、`grid.inlinedit.js`、`grid.subgrid.js`、`grid.postext.js`和`jqModal.js`等。这些插件扩展了jqGrid的基础功能,例如表格编辑、表格...
jqGrid是一款基于jQuery的开源数据网格插件,用于在网页上动态展示数据并提供丰富的交互功能,如增、删、改、查、分类显示以及在线编辑。它通过XML、JSON或其他数据格式获取数据,并将其组织成表格形式。下面将详细...
jqGrid案例,经典搜索,异步,里面包括添加、删除、修改等日常操作,此程序是我用codeIgnite(CI)框架程序,压缩包内还有数据库文件,下载下来直接修改数据库配置文件即可预览,功能很强大,是php程序,希望下载者注意
- JSONP(JSON with Padding):一种跨域数据交互协议,用于解决同源策略限制,jqGrid 常用此方式与 PHP 服务器通信。 - CRUD 操作:创建(Create)、读取(Read)、更新(Update)和删除(Delete),是数据库操作...
jqGrid 参数详解 jqGrid 是一个基于 jQuery 的表格控件,以 ...jqGrid 是一个功能强大且灵活的表格控件,可以满足大多数的数据显示需求。通过配置不同的参数和监听事件,用户可以轻松地实现各种数据显示和处理需求。
- 学习jqGrid的API,包括方法调用和参数设置,以实现更高级的功能。 总之,这份jqGrid的示例代码集为开发者提供了一个实践和学习jqGrid的完整平台,无论是初学者还是有经验的开发者,都能从中受益匪浅,快速提升在...
它提供了丰富的功能,包括分页、排序、搜索、编辑、添加和删除记录等,是Web开发中用于创建交互式数据表的常用工具。在最新版本的jqGrid 4.4中,我们看到了一些显著的改进和增强,旨在提高用户体验和性能。 **...
- **搜索和过滤**:jqGrid提供了高级搜索功能,可以设置多个搜索条件,并支持模糊匹配。 - **行操作**:允许用户添加、编辑和删除行,提供了弹出式编辑和行内编辑两种模式。 - **国际化**:jqGrid支持多语言,你...
同时,文档中还介绍了一些常用的方法,如刷新表格、加载数据和操作行等,这些都是在实际开发中经常会用到的功能。 最后,文档涵盖了事件处理,这是 jqGrid 功能强大之处,因为通过监听表格的各种事件,开发者可以...
jqGrid 是一款基于 jQuery 的强大表格插件,它提供了丰富的功能,包括分页、排序、搜索等,非常适合用于展示大量数据。根据提供的部分文档,我们可以详细了解其安装及基本配置。 **安装步骤**: 1. **文件准备**:...
JqGrid是一款强大的JavaScript库,用于在Web应用中展示和操作数据,而Struts2和Spring是Java领域中常用的MVC框架,它们在构建企业级应用程序时发挥着关键作用。 首先,让我们了解一下JqGrid。JqGrid是一款基于...
### jqGrid帮助文档知识点概述 #### 一、jqGrid安装指南 **1.1 安装简介** jqGrid是一款基于jQuery的开源插件...通过以上介绍,可以看出jqGrid提供了丰富的配置选项,可以帮助开发者轻松构建功能强大的数据展示网格。
jqGrid 提供了将数据导出为 XML 文件的功能,使得数据能在不同的系统间进行交互。 3. **CSV (Comma Separated Values)**: 逗号分隔值,是最常见的数据交换格式之一,广泛用于电子表格软件如 Excel。jqGrid 支持将...
除了以上介绍的方法,jqGrid 还提供了其他一些常用的方法: 4. **delRowData**:删除指定行,接受 rowid 参数。 5. **setRowData**:更新指定行的数据,接受 rowid 和新的数据对象参数。 6. **editRow** 和 **...
jqGrid支持JSON和XML两种数据格式,这两种格式都是数据交换的常用标准,尤其是对于Web服务和AJAX通信。 **分页** 是jqGrid的一个核心特性,它可以自动处理大量数据的显示,只加载用户当前查看的部分数据,提高了...
本文档旨在详细介绍jqGrid的基本配置、常用属性、事件及方法,帮助开发者更好地理解和使用这一强大的工具。 #### 二、表格配置详解 在jqGrid中,表格配置是非常灵活且强大的,通过定义`colModel`(列模型)来定制...
- **JSON 数据**:最常用的数据格式之一,jqGrid 支持 JSON 对象或 JSON 字符串。 - **数组数据**:可以使用普通的 JavaScript 数组来传递数据。 - **用户自定义数据**:支持自定义数据格式。 #### 六、基本 Grid ...
例如,你可以使用 `$("#grid").jqGrid()` 初始化一个表格,并通过配置选项设置列定义、数据源、分页设置等。此外,jqGrid还支持JSON、XML、HTML等多种数据格式,便于从服务器获取并显示数据。 `combine.php` 可能是...
jqGrid是一款基于jQuery的开源插件,用于创建功能丰富的网格或数据表格。它支持多种数据格式(如JSON、XML等),并具备强大的数据处理能力,例如排序、过滤、分页等功能。在企业级应用中,jqGrid因其灵活性和易用性...