前面介绍了怎么使用其MVC方式,很好用。不过,觉得还是只使用前段比较好。

1.1 如何安装

http://www.trirand.com/blog/?page_id=6 下载。

</html>

需要按以下顺序,

链接jQuery UI的的CSS文件,然后jqGrid的CSS文件。

然后引用jQuery脚本文件,i18n脚本文件,jqGrid脚本文件。

2 了解他是如何工作的

理解jqGrid是如何工作的,会帮助你掌握插件的全部功能。要理解的第一件事情,是列表数据的两个方面:

  • 客户端表现
  • 服务端操作

JqGrid是使得web浏览器grid容易操作的列表数据组件。它使用Ajax,调用取回信息,并使用jqGrid Column Model(colModel)构建列表数据的表现。

此外,jqGrid帮助你,发送任何数据变化,或附加服务端的数据库,一个被称作服务端操作的处理,或SSM。

SSM是指服务器处理实际的变化,更新到数据库,而不是通过用户的浏览器。SSM不是web页面中可见的东西。服务端数据变更使用PHP,或其他任何公共编程语言。

一个jqGrid包含以下四个部分:

  • Caption layer 包含grid的公共信息
  • Header layer 包含列的信息:label,width
  • Body layer 从服务器请求的数据,在column model中显示关联的设置
  • Navigation layer 包含被请求数据的附加信息,和请求一小片信息的动作。Navigation layer不仅仅能显示在grid的bottom,可以在页面的任何地方。它上面也能加按钮和链接,如editing,deleting,adding,searching。

Grid最小的数据表现,是Header layer和Body layer。

为了自由和灵活性,和总是更好的印象,jqGrid依赖CSS来显示。

3 第一个Grid

为了jqGrid,我们需要遵循下面三个事情

  1. 一个有样本数据的数据库
  2. 一个显示data的HTML页面
  3. 一个服务端组件,扮演web页面和数据库之间的接口
html, body { margin: 0; padding: 0; font-size: 75%; } $(function () { $("#list").jqGrid({ url: "/Grid/List", datatype: "JSON", mtype: "GET", colNames: ["OrderID", "CustomerID", "EmployeeID", "OrderDate", "RequiredDate", "ShippedDate", "ShipVia", "Freight", "ShipName", "ShipAddress", "ShipCity", "ShipCountry"], colModel: [ { name: "OrderID", width: 55 }, { name: "CustomerID", width: 55 }, { name: "EmployeeID", width: 55 }, { name: "OrderDate", width: 55 }, { name: "RequiredDate", width: 55 }, { name: "ShippedDate", width: 55 }, { name: "ShipVia", width: 55 }, { name: "Freight", width: 55 }, { name: "ShipName", width: 55 }, { name: "ShipAddress", width: 55 }, { name: "ShipCity", width: 55 }, { name: "ShipCountry", width: 55 } ], pager: "#pager", rowNum: 10, rowList: [10, 20, 30], sortname: "", sortorder: "desc", viewrecords: true, gridview: true, autoencode: true, caption: "My First Grid" }); })

服务端代码:

}

Property Description
url 告诉我们去哪取得数据。代表性的是服务端从数据库取得相应。
datatype 告诉jgGrid,返回信息的类型,让jgGrid构建它。
mtype 告诉我们如何做Ajax请求:Get或POST。
colNames 一组列名。会显示在grid的head上。
colModel 描述列模型的数组。这是gird最重要的一部分。常用的
name:列名,不必和数据库中一样。
index:传递给服务器用来分类排序的名字。我们也可以传递列数。一般地,这是数据库中的名字,用来服务端排序。
width:列的宽度,单位是像素。
align:列的对齐方式。
sortable:指定列中的数据可以被排序。如果false,点击header没有效果。
pager 定义一个pager bar来导航记录。它可以放在任何地方。
rowNum 设置grid中显示的行数。这个参数会传递给URL,从服务器取回数据
rowList 一个数组,构建一个select box元素,可以改变可视行数。在运行期间改变这个值,会替换rowNum参数
sortname 设置初始化的排序列。可以是一个名字或数字。这个参数会附加到URL上。
viewrecords 定义是否我们在pager bar上显示查询的总记录数
caption 设置grid的主题。如果这个参数没有设置,则不显示。

服务端返回的XML数据格式中:

<row id = 'unique_rowid'>

<row id = 'unique_rowid'>


</rows>

Tag Description
rows grid的跟标签
page 被请求的页数
total 查询的总页数
records 查询的总条数
row grid中特别的行
cell 实际的数据。CDATA可以被使用。这种方式可以添加图片,链接和check boxes。

每行的cell tags个数,必须等于定义在colModel中的cells个数。row tags中的id属性,如果这个属性被忽略了,jgGrid会有两种方式处理这个独一无二的id:如果colModel中该属性设置了key,jqGrid会指派列的值到这行的id。不然,jqGrid会基于row的顺序设定id。

如果使用一个与内容无关的primary key来标识数据行,那么grid的可视单元格不包含这个值。

【JQGRID DOCUMENTATION】.学习笔记.1.安装jqGrid的更多相关文章

  1. CentOS学习笔记--Tomcat安装

    Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...

  2. OracleDesigner学习笔记1――安装篇

    OracleDesigner学习笔记1――安装篇   QQ:King MSN:qiutianwh@msn.com Email:qqking@gmail.com 一.       前言 Oracle是当 ...

  3. CUBRID学习笔记 2 安装教程

    下载地址  http://www.cubrid.org/?mid=downloads&item=any&os=detect&cubrid=9.3.0 选择适合你的服务器版本 l ...

  4. nodejs学习笔记<一>安装及环境搭建

    零零散散学了几天nodejs,进度一直停滞不前,今天沉下心来好好看了下nodejs的介绍和代码.自己也试着玩了下,算是有点入门了. 这里来做个学习笔记. ——————————————————————— ...

  5. docker学习笔记1 -- 安装和配置

    技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...

  6. Nginx 学习笔记之安装篇

    在windows下安装Nginx其实非常简单,只需如下几个步骤: 1. 在Nginx官网下载相应版本的安装程序,上面有最新版.稳定版等各种版本,正式运营的项目建议下载最新的稳定版 2.将下载后的压缩包 ...

  7. 学习笔记:安装swig+用SWIG封装C++为Python模块+SWIG使用说明

    这段时间一直在摸索swing,用它来封装C++代码来生成python脚步语言.并总结了swing从安装到配置再到代码封装编译生成动态库的整个过程,下面这篇文章都是我在实际的运用中的一些经验总结,分享给 ...

  8. Docker学习笔记之--安装mssql(Sql Server)并使用Navicat连接测试(环境:centos7)

    前一节演示如何使用Nginx反向代理 .net Core项目容器,地址:Docker学习笔记之-部署.Net Core 3.1项目到Docker容器,并使用Nginx反向代理(CentOS7)(二) ...

  9. TP6学习笔记一:安装与基本配置

    1 说明与概述 1.1 说明 以下内容大部分来源于TP6完全开发手册,以手册为主附上个人理解,仅作学习使用. 1.2 概述 第一篇学习笔记,主要记录TP6的基础,包括TP6简介,安装,Hello Wo ...

随机推荐

  1. 动词 or 名词 :这是一个问题 【转载】

    前言:有网友让我用通俗的语言来讲一讲RESTful ,   我在这一块工程实践的不太多,有点为难了,  只能讲一讲我的理解, 欢迎大家批评指正.计算机行业最擅长造新词了,像什么AJAX,IoC, AO ...

  2. 分布式消息系统Kafka初步

    终于可以写kafka的文章了,Mina的相关文章我已经做了索引,在我的博客中置顶了,大家可以方便的找到.从这一篇开始分布式消息系统的入门. 在我们大量使用分布式数据库.分布式计算集群的时候,是否会遇到 ...

  3. Unity插件研究院之ResourceChecker

    这个插件是我在国外网站逛论坛发现的,试用了一下非常好用,是一个轻量级的插件就一个类.开发中尤其是和美术合作的时候,可能你会发现Project视图中有很多没有用到的资源,但是你又不敢删除,因为你不知道那 ...

  4. 无法打开内核设备“\\.\Global\vmx86”: 系统找不到指定的文件。您在安装 VMware Workstation 后是否进行了重新引导?

    解决方法宿主机中执行如下命令重新启动: net start vmci net start vmx86 net start VMnetuserif sc config vmci=auto sc conf ...

  5. cocos2dx 3.x(多个按钮button执行同一事件的区分)

    // // ATTGamePoker.hpp // MalaGame // // Created by work on 2016/10/18. // // #ifndef ATTGamePoker_h ...

  6. android studio ,Gradle DSL method not found: 'compile()'

    用gradle构建android工程出现  Gradle DSL method not found: 'compile()' 错误 检查你外层的build.gradle文件中是不是用了compile方 ...

  7. asp.net treeview 异步加载

    在使用TreeView控件的时候,如果数据量太大,这个TreeView控件加载会很慢,有时甚至加载失败, 为了更好的使用TreeView控件加载大量的数据,采用异步延迟加载TreeView. 在Tre ...

  8. [转]那些年我还不懂:IList,ICollection,IEnumerable,IEnumerator,IQueryable

    1.首先看一个简单的例子 int[] myArray = { 1, 32, 43, 343 }; IEnumerator myie = myArray.GetEnumerator(); myie.Re ...

  9. CommonJS规范

    CommonJS是一种规范,NodeJS是这种规范的实现.CommonJS是一 个不断发展的规范,计划将要包括如下部分: Modules Binary strings and buffers Char ...

  10. 转:python webdriver API 之操作测试对象

    一般来说,所有有趣的操作与页面交互都将通过 WebElement 接口,包括上一节中介绍的对象定位,以及本节中需要介绍的常对象操作.webdriver 中比较常用的操作元素的方法有下面几个: cle ...