`
wangxiao5530
  • 浏览: 136892 次
  • 性别: Icon_minigender_2
  • 来自: 大连
社区版块
存档分类
最新评论

jqGrid常用功能设置

 
阅读更多

这是随便写的一个例子,其中主要为大家演示了一些常用操作:

 

 页面效果如下:

 

代码如下:

 

<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对象。
 
最后,例子很随意,凑合着看吧
  • 大小: 39.5 KB
分享到:
评论

相关推荐

    JQuery插件jqGrid常用属性说明

    以下是对jqGrid常用属性的详细说明: 1. **colModel**:这是jqGrid最重要的配置之一,用于定义表格列的属性。每个列都有一个对象,包含列名(name)、标题(title)、宽度(width)等属性,还可以设置是否可编辑...

    JQuery插件jqGrid常用属性说明.docx

    jqGrid的核心功能依赖于一系列插件,如`grid.custom.js`、`grid.formedit.js`、`grid.inlinedit.js`、`grid.subgrid.js`、`grid.postext.js`和`jqModal.js`等。这些插件扩展了jqGrid的基础功能,例如表格编辑、表格...

    JQuery插件jqGrid常用属性说明.pdf

    jqGrid是一款基于jQuery的开源数据网格插件,用于在网页上动态展示数据并提供丰富的交互功能,如增、删、改、查、分类显示以及在线编辑。它通过XML、JSON或其他数据格式获取数据,并将其组织成表格形式。下面将详细...

    jqGrid案例经典常用功能CI框架+数据库文件

    jqGrid案例,经典搜索,异步,里面包括添加、删除、修改等日常操作,此程序是我用codeIgnite(CI)框架程序,压缩包内还有数据库文件,下载下来直接修改数据库配置文件即可预览,功能很强大,是php程序,希望下载者注意

    jqGrid_php

    - JSONP(JSON with Padding):一种跨域数据交互协议,用于解决同源策略限制,jqGrid 常用此方式与 PHP 服务器通信。 - CRUD 操作:创建(Create)、读取(Read)、更新(Update)和删除(Delete),是数据库操作...

    jqGrid_各种参数_详解

    jqGrid 参数详解 jqGrid 是一个基于 jQuery 的表格控件,以 ...jqGrid 是一个功能强大且灵活的表格控件,可以满足大多数的数据显示需求。通过配置不同的参数和监听事件,用户可以轻松地实现各种数据显示和处理需求。

    jqgrid全套示例代码

    - 学习jqGrid的API,包括方法调用和参数设置,以实现更高级的功能。 总之,这份jqGrid的示例代码集为开发者提供了一个实践和学习jqGrid的完整平台,无论是初学者还是有经验的开发者,都能从中受益匪浅,快速提升在...

    jqGrid 演示最新版 jqgrid 4.4, jQuery 1.8.0, jQuery-ui 1.8.23

    它提供了丰富的功能,包括分页、排序、搜索、编辑、添加和删除记录等,是Web开发中用于创建交互式数据表的常用工具。在最新版本的jqGrid 4.4中,我们看到了一些显著的改进和增强,旨在提高用户体验和性能。 **...

    jqgrid 插件

    - **搜索和过滤**:jqGrid提供了高级搜索功能,可以设置多个搜索条件,并支持模糊匹配。 - **行操作**:允许用户添加、编辑和删除行,提供了弹出式编辑和行内编辑两种模式。 - **国际化**:jqGrid支持多语言,你...

    jqGrid3.6中文文档

    同时,文档中还介绍了一些常用的方法,如刷新表格、加载数据和操作行等,这些都是在实际开发中经常会用到的功能。 最后,文档涵盖了事件处理,这是 jqGrid 功能强大之处,因为通过监听表格的各种事件,开发者可以...

    jqgrid手册

    jqGrid 是一款基于 jQuery 的强大表格插件,它提供了丰富的功能,包括分页、排序、搜索等,非常适合用于展示大量数据。根据提供的部分文档,我们可以详细了解其安装及基本配置。 **安装步骤**: 1. **文件准备**:...

    JqGrid项目(java web)

    JqGrid是一款强大的JavaScript库,用于在Web应用中展示和操作数据,而Struts2和Spring是Java领域中常用的MVC框架,它们在构建企业级应用程序时发挥着关键作用。 首先,让我们了解一下JqGrid。JqGrid是一款基于...

    jqGrid帮助文档

    ### jqGrid帮助文档知识点概述 #### 一、jqGrid安装指南 **1.1 安装简介** jqGrid是一款基于jQuery的开源插件...通过以上介绍,可以看出jqGrid提供了丰富的配置选项,可以帮助开发者轻松构建功能强大的数据展示网格。

    jqgrid 导出成为 JSON, XML, CSV, TSV, TXT, SQL, Word, Excel, PNG,PDF格式

    jqGrid 提供了将数据导出为 XML 文件的功能,使得数据能在不同的系统间进行交互。 3. **CSV (Comma Separated Values)**: 逗号分隔值,是最常见的数据交换格式之一,广泛用于电子表格软件如 Excel。jqGrid 支持将...

    jqGrid与Struts2的结合应用_操作Grid数据

    除了以上介绍的方法,jqGrid 还提供了其他一些常用的方法: 4. **delRowData**:删除指定行,接受 rowid 参数。 5. **setRowData**:更新指定行的数据,接受 rowid 和新的数据对象参数。 6. **editRow** 和 **...

    Asp.net+jqGrid

    jqGrid支持JSON和XML两种数据格式,这两种格式都是数据交换的常用标准,尤其是对于Web服务和AJAX通信。 **分页** 是jqGrid的一个核心特性,它可以自动处理大量数据的显示,只加载用户当前查看的部分数据,提高了...

    javascript中的jqgrid相关使用文档

    本文档旨在详细介绍jqGrid的基本配置、常用属性、事件及方法,帮助开发者更好地理解和使用这一强大的工具。 #### 二、表格配置详解 在jqGrid中,表格配置是非常灵活且强大的,通过定义`colModel`(列模型)来定制...

    jqgrid帮组文档

    - **JSON 数据**:最常用的数据格式之一,jqGrid 支持 JSON 对象或 JSON 字符串。 - **数组数据**:可以使用普通的 JavaScript 数组来传递数据。 - **用户自定义数据**:支持自定义数据格式。 #### 六、基本 Grid ...

    jqGrid 3.4.1

    例如,你可以使用 `$("#grid").jqGrid()` 初始化一个表格,并通过配置选项设置列定义、数据源、分页设置等。此外,jqGrid还支持JSON、XML、HTML等多种数据格式,便于从服务器获取并显示数据。 `combine.php` 可能是...

    jqgrid总结.doc

    jqGrid是一款基于jQuery的开源插件,用于创建功能丰富的网格或数据表格。它支持多种数据格式(如JSON、XML等),并具备强大的数据处理能力,例如排序、过滤、分页等功能。在企业级应用中,jqGrid因其灵活性和易用性...

Global site tag (gtag.js) - Google Analytics