JQGrid的用法解析(列编辑,添加行,删除行)

JQGrid的用法解析(列编辑,添加行,删除行)

什么是JQGrid

JQGrid 是一个基于jQuery的表格插件,可以方便的进行添加、编辑、删除等操作。使用JQGrid可以让开发者更加轻松的操纵HTML表格。

JQGrid的使用步骤

第一步: 引入JQGrid插件文件

必须在页面中引入JQGrid的JS和CSS文件。可以从JQGrid官网下载最新版本的JQGrid,或者使用CDN方式引入。

<!-- 引入jquery文件 -->
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

<!-- 引入JQGrid插件文件 -->
<link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/free-jqgrid/4.15.6/css/ui.jqgrid.min.css">
<script src="https://cdn.bootcdn.net/ajax/libs/free-jqgrid/4.15.6/jquery.jqGrid.min.js"></script>

第二步: 添加HTML结构

在HTML页面中添加一个表格的DIV容器和一个分页DIV容器。

<div id="gridContainer"></div>
<div id="pagerContainer"></div>

第三步: 设置JQGrid的参数

$("#gridContainer").jqGrid({
    url:"data.json", // 数据URL
    editurl:"edit.php", // 编辑URL
    datatype: "json", // 数据类型
    colModel: [
        {name:'id', index:'id', align:'center', hidden:true},
        {name:'name', index:'name', align:'center', width:150, editable:true},
        {name:'age', index:'age', align:'center', width:100, editable:true},
        {name:'email', index:'email', align:'center', width:200, editable:true}
    ],
    rowNum:10, // 初始显示行数
    rowList:[10,20,30], // 每页显示行数
    pager: '#pagerContainer', // 分页DIV容器
    sortname: 'id', // 排序字段
    sortorder: "desc", // 排序方式
    viewrecords: true, // 是否显示总记录数
    caption: "用户列表" // 表格标题
});

以上是JQGrid最基本的使用方法,我们可以根据需求进行更多的设置,比如设置列的排序、搜索、导出等。

JQGrid的列编辑

JQGrid可以直接在表格中进行列编辑操作,只需要将colModel中editable属性设置为true即可。在编辑完成后,JQGrid会自动将数据发送到服务器保存。

$("#gridContainer").jqGrid({
    url:"data.json",
    editurl:"edit.php",
    datatype: "json",
    colModel: [
        {name:'id', index:'id', align:'center', hidden:true},
        {name:'name', index:'name', align:'center', width:150, editable:true},
        {name:'age', index:'age', align:'center', width:100, editable:true},
        {name:'email', index:'email', align:'center', width:200, editable:true}
    ],
    rowNum:10,
    rowList:[10,20,30],
    pager: '#pagerContainer',
    sortname: 'id',
    sortorder: "desc",
    viewrecords: true,
    caption: "用户列表"
});

JQGrid的添加行

JQGrid可以直接在表格中添加一行数据,只需要使用addRowData方法。该方法的参数是一个对象,表示要添加的行数据。如果不仅需要添加行数据,还需要将数据发送到服务器保存,则需要使用editurl参数指定保存数据的URL。

$("#gridContainer").jqGrid({
    url:"data.json",
    editurl:"edit.php",
    datatype: "json",
    colModel: [
        {name:'id', index:'id', align:'center', hidden:true},
        {name:'name', index:'name', align:'center', width:150, editable:true},
        {name:'age', index:'age', align:'center', width:100, editable:true},
        {name:'email', index:'email', align:'center', width:200, editable:true}
    ],
    rowNum:10,
    rowList:[10,20,30],
    pager: '#pagerContainer',
    sortname: 'id',
    sortorder: "desc",
    viewrecords: true,
    caption: "用户列表"
});

$("#addButton").click(function(){
    var rowdata = {
        id: "1001",
        name: "张三",
        age: "20",
        email: "zhangsan@example.com"
    };
    $("#gridContainer").jqGrid('addRowData', "1001", rowdata);
});

以上代码中,我们先在页面中添加一个按钮,当该按钮被点击时,就会调用addRowData方法添加一行数据到表格。

JQGrid的删除行

JQGrid可以直接在表格中删除一行数据,只需要使用delRowData方法。该方法的参数是一个字符串,表示要删除的行的ID。如果不仅需要删除行数据,还需要将数据发送到服务器保存,则需要使用editurl参数指定保存数据的URL。

$("#gridContainer").jqGrid({
    url:"data.json",
    editurl:"edit.php",
    datatype: "json",
    colModel: [
        {name:'id', index:'id', align:'center', hidden:true},
        {name:'name', index:'name', align:'center', width:150, editable:true},
        {name:'age', index:'age', align:'center', width:100, editable:true},
        {name:'email', index:'email', align:'center', width:200, editable:true}
    ],
    rowNum:10,
    rowList:[10,20,30],
    pager: '#pagerContainer',
    sortname: 'id',
    sortorder: "desc",
    viewrecords: true,
    caption: "用户列表"
});

$("#deleteButton").click(function(){
    var rowid = $("#gridContainer").jqGrid('getGridParam', 'selrow');
    if(rowid == null){
        alert("请选择要删除的行!");
        return;
    }
    $("#gridContainer").jqGrid('delRowData', rowid);
});

以上代码中,我们先在页面中添加一个按钮,当该按钮被点击时,就会调用delRowData方法删除被选中的行。如果没有选中任何行,则会弹出提示框。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JQGrid的用法解析(列编辑,添加行,删除行) - Python技术站

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

相关文章

  • JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】

    JavaScript实现的弹出遮罩层特效是在网页设计中经常用到的一种技术,本文将讲解“JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】”的完整攻略。 一、弹出遮罩层的概念 弹出遮罩层,指在网页中,以不同形式显示于页面之上的一层,起到控制页面元素可见性的作用。 二、使用jQuery插件开发弹出遮罩层 在网页中实现弹出遮罩层可以引用jQuer…

    jquery 2023年5月28日
    00
  • jQWidgets jqxChart crosshairsDashStyle属性

    jQWidgets 的 jqxChart 组件提供了 crosshairsDashStyle 属性,用于设置图表十字线的虚线样式。本文将详细介绍 crosshairsDashStyle 属性的使用方法,包括概述、示例以及注意事项。 crosshairsDashStyle 属性概述 crosshairsDashStyle 属性用于设置图表十字线的虚线样式。可以…

    jquery 2023年5月11日
    00
  • javascript与jquery动态创建html元素示例

    前言 JavaScript 是一门强大的脚本语言,可以用来直接操作 HTML 和 CSS,实现动态更新 Web 页面。而 jQuery 是 JavaScript 库中最常用的工具之一,它为开发者提供了方便易用的 API,可以很方便地完成诸如增删改查等操作。 在本文中,我将详细介绍如何使用 JavaScript 和 jQuery 动态创建 HTML 元素。我将…

    jquery 2023年5月27日
    00
  • jQuery UI Dialog标题选项

    以下是关于 jQuery UI Dialog 标题选项的详细攻略: jQuery UI Dialog 标题选项 标题选项用于设置对话框的标题。可以使用该选项来设置对话框的标题文本、图标和关闭按钮。 语法 $(selector).dialog({ title: "对话框标题", dialogClass: "对话框样式",…

    jquery 2023年5月11日
    00
  • Asp.net利用JQuery弹出层加载数据代码

    以下是详细讲解 “Asp.net利用JQuery弹出层加载数据代码” 的完整攻略。 确定需求 在开始编写代码前,我们需要先确定以下需求: 需要一个弹出层。 弹出层需要能够加载数据。 数据来源为后台数据库接口。 需要使用jQuery实现。 安装jQuery 首先,我们需要在项目中引入jQuery,在 .html 文件中加入下面这一段代码: <script…

    jquery 2023年5月28日
    00
  • jquery实现图片随机排列的方法

    实现图片随机排列的方法,可以通过jQuery来实现。下面是具体的攻略: 1.准备图片资源 首先需要准备一些图片资源,可以是相同或不相同尺寸的图片,保证它们的文件名和扩展名统一,方便后续编程操作。 2.编写HTML代码 在HTML中,通过一个图片容器(div),来容纳所有的图片资源。容器的宽度可以根据实际需求,自行设置。在容器中,通过img标签来引入图片资源,…

    jquery 2023年5月28日
    00
  • javascript给span标签赋值的方法

    当使用 JavaScript 操作 HTML 文档时,我们经常需要读取或设置文档中元素的属性或内容。关于如何给 span 标签赋值,有以下几种方法: 1. 通过innerHTML属性 可以使用 innerHTML 属性,将要设置的文本作为字符串赋值给该属性即可。 示例代码: const mySpan = document.getElementById(‘my…

    jquery 2023年5月27日
    00
  • jQWidgets jqxTagCloud minFontSize属性

    当使用jQWidgets 的jqxTagCloud组件时,我们可以使用minFontSize属性设置标签中最小的字体大小。该属性可以是一个数字或一个字符串,单位为像素(px)。 当设置了minFontSize属性时,如果标签中的文字太长,则文字大小将被减小到设定的最小字体大小以适应标签大小。以下是一个示例: $("#tagCloudContaine…

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