`
hewei870723
  • 浏览: 63011 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

jqGrid 编辑传参 与后台交互

阅读更多

一、前台:

  html代码:

<table id="chartTable" class="scroll" cellpadding="0" cellspacing="0"></table>
<div id="chartpager"></div>

 

js代码:

jQuery("#chartTable").jqGrid({
   url : '../dashbord/getAllChart.do',
   datatype : "json",
   colNames : [ "ID", "视图ID", "图表类型", "标题", "Y坐标显示","X坐标显示","数据SQL","分类名称","刷新时间" ],
   colModel : [ {
    name : "id",
    index : "id",
    width : 100,
    align : "center"
   }, {
    name : "pid",
    index : "pid",
    width : 100,
    align : "center",
    editable : true
   }, {
    name : "type",
    index : "type",
    width : 185,
    editable : true,
    align : "left",
    edittype : "select",
    editoptions : {
     value : "areaChart:区域图;lineChart:折线图;columnChart:柱状图;panelChart:仪表盘;pieChart:饼图"
    }
   }, {
    name : "title",
    index : "title",
    editable : true,
    align : "left",
    width : 130
   }, {
    name : "valueField",
    index : "valueField",
    width : 150,
    editable : true
   },{
    name : "categoryField",
    index : "categoryField",
    width : 100,
    editable : true
   },{
    name : "dataSource",
    index : "dataSource",
    width : 180,
    editable : true,
    edittype : "textarea",
    editoptions:{rows:"5",cols:"25"}
   },{
    name : "displayName",
    index : "displayName",
    width : 150,
    editable : true,
    edittype : "text"
   },{
    name : "refreshTime",
    index : "refreshTime",
    width : 150,
    editable : true,
    edittype : "text"
   },],
   height : 400,
   width  : 915,
   rowNum : 10,
   rowList : [ 10, 20, 50 ],
   viewrecords : true,
   forceFit : true,
   sortname : 'id',
   pager : jQuery('#chartpager'),
   jsonReader : {
    id : '0'
   },
   editurl : "../dashbord/editChart.do",
   caption : "视图选项配置"
  }).navGrid("#chartpager", {
   edit : true,
   add : true,
   del : true
  });

 

二、后台

查询出数据,分页显示的方法

public void getAllChart(HttpServletRequest request,
   HttpServletResponse response) throws Exception {
  request.setCharacterEncoding("utf-8");

  String page = request.getParameter("page");
  String rows = request.getParameter("rows");
  String req = request.getParameter("searchField");

  PrintWriter out = response.getWriter();

  List chartList = chartDao.getAllCharts();

  int totalRecord = chartList.size();
  int totalPage = totalRecord % Integer.parseInt(rows) == 0 ? totalRecord
    / Integer.parseInt(rows) : totalRecord / Integer.parseInt(rows)
    + 1;

  String json = "{total: " + totalPage + ", page: " + page
    + ", records: " + totalRecord + ", rows: [";

  int index = (Integer.parseInt(page) - 1) * Integer.parseInt(rows); // 开始记录数
  int pageSize = Integer.parseInt(rows);

  for (int i = index; i < pageSize + index && i < totalRecord; i++) {
   Chart chart = (Chart) chartList.get(i);
   json += "{cell:['" + chart.getId() + "','" + chart.getPid() + "','"
     + chart.getType() + "','" + chart.getTitle() + "','"
     + chart.getValueField() + "','" + chart.getCategoryField()
     + "','" + Deal.string2Json(chart.getDataSource()) + "','"
     + chart.getDisplayName() + "','"+chart.getRefreshTime()+"']}";
   if (i != pageSize + index - 1 && i != totalRecord - 1) {
    json += ",";
   }
  }
  json += "]}";
  out.println(json.toString());
  out.flush();
 }

 

编辑:删除、修改、添加的方法。这里如果用struts会更简单。

public void editChart(HttpServletRequest request,
   HttpServletResponse response) throws Exception {
  request.setCharacterEncoding("utf-8");
  
  String oper = request.getParameter("oper");
  String id = request.getParameter("id");
  
  String pid = request.getParameter("pid");
  String type = request.getParameter("type");
  String title = request.getParameter("title");
  String valueField = request.getParameter("valueField");
  String categoryField = request.getParameter("categoryField");
  String dataSource = request.getParameter("dataSource");
  String displayName = request.getParameter("displayName");
  String refreshTime = request.getParameter("refreshTime");
 
  if(oper.equals("del")){
   chartDao.deleteChartById(Integer.parseInt(id));
  }else{
   Chart chart = new Chart();
   chart.setCategoryField("kpiTime");
   chart.setDisplayName(displayName);
   chart.setPid(Integer.parseInt(pid));
   chart.setValueField(valueField);
   chart.setTitle(title);
   chart.setType(type);
   chart.setDataSource(dataSource);
   chart.setRefreshTime(Integer.parseInt(refreshTime));
   
   if(oper.equals("edit")){
    chartDao.updateChartByObj(chart,Integer.parseInt(id));
   }else if(oper.equals("add")){
    chartDao.insertNewChart(chart);
   }
  }
 }

分享到:
评论

相关推荐

    JqGrid 纯Json自带分页功能

    JqGrid是一款强大的JavaScript表格插件,它允许开发者在网页上创建交互式的表格,并提供了数据检索、排序、筛选、编辑和分页等多种功能。在这个场景中,我们将关注JqGrid如何利用纯JSON数据实现自动分页。 在Web...

    jqgrid分页参数

    `jqGrid`是一款基于jQuery的表格插件,支持动态数据加载、排序、分页、搜索、编辑等功能。它的灵活性和强大的扩展性使得其成为许多开发者首选的数据展示工具。在实际项目中,我们经常需要对大量的数据进行分页处理,...

    基于NPOI的JQGrid数据表格前后台交互实现及应用案例 - 后端开发 - 消防安全系统报表生成

    内容概要:本文档详细介绍了一个消防安全管理系统中的具体操作——从JQGrid数据表格获取数据并导出至Excel文件的功能。在前端部分,通过调用自定义函数btn_ExportExcel(),首先获取jqGrid中的全部数据项。随后构造...

    jqgrid行编辑+动态为其他列赋值

    总结起来,实现"jqgrid行编辑+动态为其他列赋值"涉及了前端交互设计、JavaScript编程、jqGrid API的熟练应用以及后端数据处理。理解和掌握这些知识点,对于开发功能丰富的数据驱动Web应用至关重要。在实际项目中,应...

    jqgrid 编辑表格 一列

    jqGrid 提供了多种编辑模式,包括行内编辑(inline editing)、弹出式编辑(popup editing)和单击编辑(click-to-edit)。对于“一列编辑”,通常采用行内编辑,因为这样用户可以直观地看到数据变化。 1. 行内编辑...

    jqGrid实例下载(数据交互,统计,时间插件都已实现)

    1. 数据交互:jqGrid能够轻松地与服务器进行数据交换。你可以通过AJAX实现动态加载数据,同时支持增删改查操作。在实例中,这意味着你可以看到如何设置URL以获取或更新数据,如何定义参数,以及如何处理服务器返回的...

    jqGrid 各种参数详解

    它通过 AJAX 方式与服务器端进行通信,实现了数据的异步加载、排序、筛选、编辑等功能,大大简化了Web应用程序中表格数据管理的复杂性。 在安装jqGrid时,你需要将必要的 CSS 和 JavaScript 文件引入到你的 HTML ...

    jqGrid完整实例

    6. **主题与样式**:jqGrid提供多种预设主题,如“ui.jqgrid.css”中的“ui-blue”和“ui-gray”。你可以根据项目需求选择合适的主题,或者自定义样式以满足特定设计需求。 7. **扩展功能**:jqGrid还支持列拖放、...

    jqGrid 前端框架 连接后台实例 java servlet+jsp+mysql

    为了实现jqGrid与后台的交互,你需要配置以下关键步骤: 1. **jqGrid配置**:在前端页面中,你需要正确设置jqGrid的参数,如URL(指向Servlet的地址)、datatype(数据类型,通常是'json'或'xml')和colModel(定义...

    jqGrid jsp+servlet+mysql+tomcat 主从表设计实现

    关于jqGrid 前端框架与后台交互及主从表实现的完整实例 如无下载币可访问本人博客 复制源码 http://blog.csdn.net/dfs4df5/article/details/51187065

    jqgrid后台连接数据库

    ### jqGrid 后台连接数据库知识点详解 #### 一、jqGrid简介 jqGrid 是一个高级、响应式、用户友好的 jQuery 表格插件,它允许开发者在网页上显示和编辑来自各种数据源(如 JSON、XML、本地或远程数据库)的数据。...

    jqGrid表格数据展示插件

    jqGrid是一款功能强大的JavaScript表格插件,主要用于网页数据的展示、编辑和管理。它基于jQuery库,提供了丰富的功能,如分页、排序、过滤、编辑、添加、删除和搜索等,使得网页上的表格操作变得更加便捷和高效。在...

    jqgrid简单前后台增删改查异调用实例

    jqGrid使用JSON、XML或HTML格式来显示数据,并且可以与各种后端数据库(如MySQL、SQL Server等)进行交互。本实例将详细介绍如何在前端使用jqGrid实现简单的增删改查操作,并通过C#作为后台处理数据。 **前后端交互...

    jqgrid参数中文说明

    jqGrid是一种基于jQuery的网格控件,用于在Web应用程序中显示和编辑数据。它提供了许多参数来控制网格的行为和显示样式。下面是jqGrid的一些常见参数的中文说明: 1. options参数 jqGrid的options参数是一个对象,...

    jqGrid的表格数据呈编辑转态

    ### jqGrid表格数据呈编辑状态知识点详解 #### 一、jqGrid简介 jqGrid是一款功能强大的jQuery插件,用于在网页上实现数据网格展示。它不仅支持数据展示,还提供了丰富的交互功能,如排序、搜索、分页等,并且允许...

    JqGrid插件+JqGridDemo+JqGrid主题

    3. 排序与筛选:用户可以通过点击表头进行列排序,同时JqGrid还提供了高级的筛选功能,如条件筛选、多条件组合筛选等。 4. 编辑功能:JqGrid支持行内编辑、弹出式编辑和表单编辑等多种模式,方便用户对表格数据进行...

    jqgrid 表格的增删改查以及modal弹出框

    jqGrid 是一个强大的 jQuery 插件,用于创建交互式的、数据丰富的网格视图。这个插件支持多种功能,包括但不限于数据的增删改查、分页、排序、过滤和自定义格式化。在这个项目文件“RuanTai.Finance”中,我们将深入...

    jqgrid中文文档API

    jQgrid使用ajax来实现对请求与响应的处理。 皮肤 从3.5版本开始,jQgrid完全支持jquery UI的theme。我们可以从http://jqueryui.com/themeroller/下载我们所需要的theme。当然,你也可以编辑自己的theme。jQgrid也...

    jqGrid4.6完整包

    8. **与其他库的集成**:jqGrid 可以与 jQuery UI、Bootstrap 等前端框架良好配合,提供一致的用户体验。 9. **自定义功能**:jqGrid 的强大之处在于其高度可定制性,开发者可以通过编写插件或扩展其 API 来实现更...

Global site tag (gtag.js) - Google Analytics