jqGrid用法汇总(全经典)

首先来介绍一下jqGrid

什么是jqGrid?

jqGrid是一个开源的jQuery插件,是一个表格插件,便于实现数据的分页、排序、筛选及编辑操作等,可与众多的主流Web开发框架(如Spring、Struts、ASP.NET MVC、Ruby on Rails)集成使用。jqGrid拥有丰富的功能和易于实现的特性,因此在Web开发中被广泛应用。

安装和使用方法

如果你已经有了jQuery,那么只需要下载jqGrid的相关文件,并引入到你的项目中即可,具体的步骤如下:

  1. 首先在官网https://trirand.com/blog/jqgrid/jqgrid.html 上下载jqGrid的相关文件

  2. 在页面中引入jqGrid的依赖文件

    html
    <link rel="stylesheet" type="text/css" media="screen" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/themes/ui-lightness/jquery-ui.css">
    <link rel="stylesheet" type="text/css" href="ui.jqgrid.css" />
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.js"></script>
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/jquery-ui.js"></script>
    <script type="text/javascript" src="jquery.jqGrid.min.js"></script>

  3. 在页面中定义一个<table>元素,用于渲染显示数据的表格

    html
    <table id="myGrid"></table>

  4. 在JavaScript中配置jqGrid

    javascript
    $(function(){
    $("#myGrid").jqGrid({
    url: "url_to_fetch_data", // 从该url获取数据
    datatype: "json", // 数据类型为json格式
    colNames: ["列1", "列2"], // 指定列名
    colModel: [ // 列模型,定义每列的一些参数
    {name: "name", width: 200}, // 定义name列并指定宽度为200px
    {name: "age", width: 60}
    ],
    rowNum: 10, // 每页数据条目数
    rowList: [10, 20, 50, 100], // 分页菜单中可供选择的页条目数
    pager: "#pager" // 分页控件id
    });
    });

这就是一个最基础的jqGrid应用示例,接下来我们将讲解一些实用的用法。

用法汇总

1.数据排序

jqGrid可以很方便地实现数据按照指定的列进行排序。实现方式是在colModel中加入sortable属性。

{    
    name: 'name',    
    index: 'name',    
    width: 200,    
    sortable: true    
}

2.数据分页

分页是很多应用场景必须要用到的功能,jqGrid提供了非常简便的数据分页方法,只要指定好每一页显示的数量即可。

$("#myGrid").jqGrid({    
    url: "url_to_fetch_data",    
    datatype: "json",    
    colNames: ["列1", "列2"],    
    colModel: [    
        {name: "name", width: 200},    
        {name: "age", width: 60}    
    ],    
    rowNum: 10, // 指定每一页显示的条数
    rowList: [10, 20, 50, 100],    
    pager: "#pager"    
});

3.分页栏的可定制性

jqGrid的分页栏可以进行可定制,比如可以隐藏某个按钮、调整按钮位置等,只需要通过定义对应条目的格式、样式等方式实现即可。

4.修改表格更改提示信息

如果使用数据编辑功能,则需要告知用户所修改的结果是否完成,此时可以自定义ondblClickRow事件,用于显示整个编辑器。

$("#myGrid").jqGrid({
    url: "url_to_fetch_data",
    datatype: "json",
    colNames: ["列1", "列2"],
    colModel: [
        {name: "name", width: 200},
        {name: "age", width: 60}
    ],
    rowNum: 10,
    rowList: [10, 20, 50, 100],
    pager: "#pager",
    // 定义ondblClickRow事件
    ondblClickRow: function (rowid) {
        var editurl = "url_to_handle_edited_data";
        jQuery("#myGrid").jqGrid('editRow', rowid, true, null, null, editurl, SuccessFunc, ErrorFunc, aftersavefunc);
    }
});

5.改变某些列的样式

可以通过类似如下方式来改变某些列的样式:

$("#myGrid").jqGrid({
    url: "url_to_fetch_data",
    datatype: "json",
    colNames: ["列1", "列2"],
    colModel: [
        {name: "name", width: 200},
        {name: "age", width: 60,
         cellattr: function (rowId, cellValue, rawObject, cm, rowObject) {
            return 'style="background-color: #f2f2f2;"';
         }}
    ],
    rowNum: 10,
    rowList: [10, 20, 50, 100],
    pager: "#pager",
});

以上就是jqGrid的一些用法总结,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jqGrid用法汇总(全经典) - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • jQuery UI Accordion beforeActivate事件

    jQuery UI 的 Accordion 组件提供了一个 beforeActivate 事件,该事件在折叠面板被激活之前触发。在本教程中,我们将详细介绍 Accordion 的 beforeActivate 事件的使用方法。 beforeActivate 事件基本语法如下: $( ".selector" ).accordion({ be…

    jquery 2023年5月11日
    00
  • seajs加载jquery时提示$ is not a function该怎么解决

    当使用seajs来加载jquery时,有时会遇到错误提示”$ is not a function”,这是因为jquery没有正确地加载或命名冲突了。以下是具体的解决方案,包含两条示例说明。 1. 利用seajs的变量映射机制解决 seajs有一个非常实用的变量映射机制,可以通过define方法来映射不同模块之间的依赖关系,从而解决命名冲突和$符号的问题。 首…

    jquery 2023年5月18日
    00
  • jQuery Mobile面板的positionFixed选项

    jQuery Mobile是一个基于jQuery的框架,封装了很多常用的移动端UI组件,其中面板(panel)是一个常用的组件,用于在页面上弹出一层浮动面板来显示内容。 positionFixed是面板组件中一个重要的选项,它可以使面板组件在滚动页面时保持固定位置不变。在面板组件中设置positionFixed为true可以实现此效果。 下面是具体的操作步骤…

    jquery 2023年5月12日
    00
  • jQWidgets jqxDataTable aggregatesHeight属性

    以下是关于“jQWidgets jqxDataTable aggregatesHeight属性”的完整攻略,包含两个示例说明: 简介 jqxDataTable 控件是一个数据表控件,可以用于和编辑数据。aggregatesHeight 属性是 jqxDataTable 控件的属性,用于设置聚合行的高度。 攻略 以下 jqx 控件的 aggregatesHei…

    jquery 2023年5月11日
    00
  • jquery插件uploadify实现带进度条的文件批量上传

    下面我会详细讲解如何使用jquery插件uploadify来实现带进度条的文件批量上传。 一、安装uploadify插件 首先需要安装uploadify插件,使用方法如下: 下载uploadify插件包并解压到项目目录下。 在html页面中引入jQuery库和uploadify所需的CSS和JavaScript文件。 <!– 引入jQuery库 –…

    jquery 2023年5月27日
    00
  • 如何使用jQuery找到所有的文本区域并制作一个边框

    使用jQuery找到所有的文本区域并为其添加边框,可以通过以下步骤实现: 第一步:选择所有的文本框 在HTML页面中,我们需要先选择所有的文本框,可以使用如下代码: var textFields = $(‘input[type="text"], textarea’); 上面的代码将会选取所有type属性值为”text”以及所有的texta…

    jquery 2023年5月12日
    00
  • $.format,jquery.format 使用说明

    $.format和jquery.format都是jquery插件中的字符串格式化函数,可以方便地对字符串进行格式化操作。 使用方法 1. 引入jquery库和jquery.format插件库 在使用$.format和jquery.format前,需要引入jquery库和jquery.format插件库。可以在html模板中添加如下代码: <script…

    jquery 2023年5月27日
    00
  • jQWidgets jqxGrid cardsize属性

    以下是关于“jQWidgets jqxGrid cardsize属性”的完整攻略,包含两个示例说明: 简介 jqxGrid 控件的 cardsize 属性用于设置卡片视图的大小。 完整攻略 以下是 jqxGrid 控件 cardsize 属性的完整攻略。 定义 cardsize 属性 在 jqxGrid 控件中,可以使用 cardsize 属性设置卡片视图的…

    jquery 2023年5月11日
    00
合作推广
合作推广
分享本页
返回顶部