最近接触到jqGrid这个插件,自己用了下,感觉还是比较方便,基于配置项来进行操作,下面就简单的记录初次使用的过程.
jqGrid文档:http://www.trirand.com/blog/jqgrid/jqgrid.html
这个文档比较重要,里面也有很大例子,可以参考下,下载好zip包后,然后导入到工程中,如下图所示
然后新建一个页面,来进行测试工作,新建的页面只需要创建一个table就可以了,其他的标签都可以不用写,如:
<table id="grid_id"></table>
这样就可以了,当然如果需要分页,那么还可以添加一个分页的div,如:
<div id="pager"></div>
这下body部分就完工了,就要开始将jqgrid的渲染到刚刚创建的table中,其实就是一些基础的配置信息,如表头啊,字段名称啊,外观显示等等,具体如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <script src="js/jquery-1.7.2.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" media="screen" href="js/jquery-ui-1.9.2.custom.css" /> <link rel="stylesheet" type="text/css" media="screen" href="js/ui.jqgrid.css" /> <script src="js/grid.locale-cn.js" type="text/javascript"></script> <script src="js/jquery.jqGrid.min.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(document).ready(function(){ jQuery("#grid_id").jqGrid({ url:'getUserList', datatype: 'json', mtype: 'GET', colNames:['学号','姓名', '性别','出生日期','年龄','备注'], colModel :[ {name:'xh', index:'xh',editable:true}, {name:'xm', index:'xm',editable:true}, {name:'xb', index:'xb', align:'right',editable:true}, {name:'csrq', index:'csrq', align:'right',editable:true}, {name:'nl', index:'nl', align:'right',editable:true}, {name:'bz', index:'bz', sortable:false,editable:true} ], pager: '#pager', rowNum:10, rowList:[10,20,30], sortname: 'xh', sortorder: 'desc', viewrecords: true, caption: 'My first grid', autowidth:true, jsonReader : { root:"invdata", page: "currpage", total: "totalpages", records: "totalrecords", repeatitems: false, id: "0" }, subGrid:true, onSelectRow: function(ids) { if(ids != null) { $("#grid_id").jqGrid("toggleSubGridRow",ids); //这里在选中的时候触发表格扩展 }else{ alert("没有选择行!"); } }, subGridRowExpanded:function(subgrid_id,row_id){ console.log(subgrid_id + " " + row_id); createSubGrid(subgrid_id,row_id); } }); /** * * 创建子表 **/ function createSubGrid(subgrid_id,row_id){ var tableHtml = "<table id="+subgrid_id+"_t></table>"; $("#" + subgrid_id).html(tableHtml); //根据ID行来获取该行的数据 var rowData=jQuery("#grid_id").jqGrid('getRowData',row_id); console.log(rowData); //通过getGridParam方法来获取对应参数信息 var colNames= jQuery("#grid_id").jqGrid('getGridParam','colNames'); console.log("colNames:" + colNames); var str = ""; for(var i = 0;i<colNames.length;i++){ if(colNames[i] ==""){ continue; } str +=colNames[i]; if(i < colNames.length-1){ str += ","; } } console.log("str:" + str ); var colModels = $("#grid_id").jqGrid('getGridParam','colModel'); console.log(colModels); $("#" + subgrid_id + "_t").jqGrid({ colNames:colNames, colModel:colModels }); jQuery("#" + subgrid_id + "_t").jqGrid('addRowData',0,rowData); } var parameters = { caption:'新增', buttonicon:'ui-icon-plus', onClickButton:function(){ alert(3); }, position: "last", title:"新增", cursor: "pointer" }; //jQuery("#grid_id").navGrid("#pager").navButtonAdd("#pager",parameters); jQuery("#grid_id").jqGrid('navGrid',"#pager").jqGrid('navButtonAdd',"#pager",parameters); }); </script> </head> <body> <table id="grid_id"></table> <div id="pager"></div> </body> </html>
部分配置说明:
- pager:指定分页控件,采用jquery选择器的形式
- rowList: 一个每页显示多少条的下拉框,可以更改每页显示的记录数
- jsonReader : 定义读取服务器返回的数据格式,跟extjs类似
- subGrid: 这个比较关键,默认是false,设置为true之后,可以查看子表格数据
- onSelectRow: 鼠标点击行的时候触发的事件,当然也可以双击:ondblClickRow
- $("#grid_id").jqGrid("toggleSubGridRow",ids): 这个是单击的时候展开子表格的事件,toggle就是来回切换
- subGridRowExpanded: 展开子表格的时候触发的事件,可以在这里创建子表格,包括数据来源,表头等信息,当然也可以通过配置subGridUrl和subGridModel来加载
- jQuery("#grid_id").jqGrid('getGridParam','colNames'); 通过getGridParam这个方法来获取对应的数据,比如colNames,colModel等。
对于表格下面的按钮,jqGrid是帮我们实现了界面,但是需要配置对应的URL,比如editUrl,然后才能进行修改操作。
相关推荐
在这个“jqGrid使用XML數據源例子”中,我们将探讨如何配置jqGrid来从XML文件中获取并显示数据。 首先,我们需要了解XML(Extensible Markup Language)是一种用于标记数据的格式,它被广泛用于数据交换和存储。XML...
jQgrid 使用帮助 jQgrid 是一个功能强大且灵活的表格控件,能够将数据动态地展示在网页上,并提供了丰富的编辑、增删查改、分类显示等功能。下面是对 jQgrid 的详细介绍: jQgrid 包说明 jQgrid 主要由以下几个包...
这个压缩包包含了一份`jqgrid使用说明及实例.docx`文档,以及两个必要的库文件:`jquery-ui-1.9.2.custom.zip`和`jquery.jqGrid-4.4.3.zip`,旨在帮助开发者快速上手并应用jqGrid。 **使用说明:** 1. **引入库...
**JqGrid 使用手册** JqGrid 是一个基于 jQuery 的数据网格插件,它提供了丰富的功能,用于在网页上展示和操作数据集。这个插件允许用户以表格形式展示大量数据,并支持排序、分页、搜索、编辑和更多高级功能。在本...
下面将详细介绍jqGrid的基本使用、核心功能以及如何进行设置。 ### 1. 安装与引入 首先,你需要在项目中引入jqGrid所需的JavaScript和CSS文件。通常,这包括`jquery.jqgrid.min.js`和`ui.jqgrid.css`。你可以通过...
在这个"jqGrid使用范例"中,我们将探讨如何将jqGrid与后端服务,包括Servlet和Struts2框架进行集成。 1. **jqGrid基本结构** jqGrid的核心是HTML表格元素,通过JavaScript脚本进行动态填充和操作。在HTML中,你...
### jqGrid 使用帮助 #### 一、jqGrid简介与组件说明 **jqGrid** 是一个高级、响应式且高度可定制的 jQuery 插件,它能够帮助开发者快速地创建复杂的数据表格界面。jqGrid 支持多种数据源格式(如 JSON、XML),...
jqGrid支持从服务器动态加载数据,可以使用`url`参数指定数据源,通过`datatype`参数设置数据类型(如`json`或`xml`)。数据加载过程中,还可以配置分页、排序和搜索等功能,如`loadonce`(一次性加载所有数据)、`...
例如,你可以使用`$("#gridId").jqGrid({...})`来初始化一个jqGrid实例。 3. **数据源**:jqGrid支持多种数据源,包括本地数组、JSON数据、XML数据以及AJAX请求。你可以通过`data`选项指定本地数据,或者通过`url`...
jQgrid中文文档API jQgrid是一个功能强大且流行...本文档提供了jQgrid的中文文档API,涵盖了其原理、使用方法、参数配置、事件处理、数据处理、ColModel API等方面的知识点,为开发者提供了一个全面的jQgrid使用指南。
在 jqGrid 中,我们可以使用一系列方法来实现对表格数据的编辑操作。以下是关于 jqGrid 行编辑方法的详细说明: 1. **editRow**: 此方法用于将指定行切换到编辑模式。调用格式为 `editRow(rowid, keys, oneditfunc,...
jqGrid使用ajax技术来处理对数据的请求和响应。这意味着,页面上的操作可以异步地与服务器通信,无需重新加载整个页面即可更新数据。 3. jqGrid的皮肤 从版本3.5开始,jqGrid完全支持jquery UI的theme。这意味着...
jqGrid使用ajax来实现请求与响应的处理。 接下来,我们来介绍一下jqGrid的皮肤。从3.5版本开始,jqGrid完全支持jqueryUI的theme。我们可以通过访问***来下载所需的主题,当然也可以自己编辑主题。对于jqGrid,我们...
这个"jqgridDemo"应该是包含了一些基本和进阶的jqGrid使用示例,帮助用户快速理解和应用jqGrid到自己的项目中。由于描述中提到官方没有提供可以直接下载的demo,这个压缩包可能是个人或社区为了方便开发者而整理的...
为了与服务器进行数据交换,jqGrid 使用 JSON 或 XML 格式。服务器返回的数据通常包含数据行、总行数、状态信息等,以便 jqGrid 正确地呈现和处理。 总的来说,jqGrid 提供了一个强大的工具集,使得在Web应用中展示...
jqGrid 使用 AJAX 实现异步通信,当用户在前端操作表格(如筛选、排序、分页等)时,jqGrid 会通过 AJAX 请求将这些操作转换为对服务器的请求。服务器根据这些请求返回相应的数据或执行操作,然后将结果以 JSON 或 ...
"jqGrid使用帮助.doc"文档很可能是jqGrid 3.8.1的中文版用户手册,涵盖了如何安装、配置和使用jqGrid的基本步骤,以及更高级的功能如自定义列、处理服务器数据、使用API等。通过这份文档,开发者可以快速掌握jqGrid...
这个资料合集包含了一个 jqGrid 的实例,以及相关的文档,可以帮助我们深入了解和使用 jqGrid。 首先,`jqGrid 使用助手.doc` 可能是一份详细指南,涵盖了如何初始化、配置、操作和自定义 jqGrid 的各个方面。这份...
8. **样式和主题**:jqGrid 使用 CSS 进行样式控制,4.0 版本可能包含了预设的 CSS 文件,如 `css/ui.jqgrid.css`,可以定制网格的外观。同时,jqGrid 兼容 jQuery UI 主题,可以通过 `uiTheme` 参数选择或创建自己...
下面将详细介绍JQGrid的基本使用、主要特性、配置选项以及如何在实际项目中应用。 1. 基本使用: JQGrid通过HTML元素初始化,通常是一个`<table>`标签。通过设置`id`属性,我们可以指定JQGrid应绑定到哪个表格。...