60jqGrid - 树模式添加数据

简介: 60jqGrid - 树模式添加数据

现在树表格与表单编辑完全的兼容。你可以增加,编辑,删除一个节点。

如果一行被选中,每一个节点都会作为一个子节点被添加进去。

如果一行未被选中,那么添加的是一个跟节点。

HTML代码举例

<html>
  <head>
    <title>jqGrid 实例</title>
  </head>
  <body>
    ···代码省略···
    <table id="addtree"></table>
    <div id="paddtree"></div>
    ···代码省略···
  </body>
</html>

javascript代码举例

$(function(){
  pageInit();
});
function pageInit(){
  jQuery("#addtree").jqGrid({
       url: ctx+'/TreeGrid2',
    treedatatype: "xml",
    mtype: "POST",
       colNames:["id","Account","Acc Num", "Debit", "Credit","Balance"],
       colModel:[
         {name:'id',index:'id', width:1,hidden:true,key:true, editable:true},
         {name:'name',index:'name', width:180, editable:true},
         {name:'num',index:'acc_num', width:80, align:"center",editable:true},
         {name:'debit',index:'debit', width:80, align:"right",editable:true},
         {name:'credit',index:'credit', width:80,align:"right",editable:true},
         {name:'balance',index:'balance', width:80,align:"right",editable:true}
       ],
    height:'auto',
    pager : "#paddtree",
      treeGrid: true,
    ExpandColumn : 'name',
    editurl:'server.php?q=dummy',
    caption: "Add Tree node example"
  });
  jQuery("#addtree").jqGrid('navGrid',"#paddtree");
}

java servlet代码举例

package net.mn886.blog.jqgrid.new_3_4;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class TreeGrid2
 */
public class TreeGrid2 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public TreeGrid2() {
        super();
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doPost(request, response);
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    String nodeid = request.getParameter("nodeid");
    String xml = "";
    if(nodeid ==null || "".equals(nodeid)){//一级数据
      xml = "<?xml version='1.0' encoding='utf-8'?>" +
          "  <rows>" +
          "    <page>1</page>" +
          "    <total>1</total>" +
          "    <records>1</records>" +
          "    <row>" +
          "      <cell>1</cell>" +
          "      <cell>Cash</cell>" +
          "      <cell>100</cell>" +
          "      <cell>400.00</cell>" +
          "      <cell>250.00</cell>" +
          "      <cell>150.00</cell>" +
          "      <cell>0</cell>" +
          "      <cell><![CDATA[NULL]]></cell>" +
          "      <cell>false</cell>" +
          "      <cell>false</cell>" +
          "    </row>" +
          "    <row>" +
          "      <cell>5</cell>" +
          "      <cell>Bank's</cell>" +
          "      <cell>200</cell>" +
          "      <cell>1500.00</cell>" +
          "      <cell>1000.00</cell>" +
          "      <cell>500.00</cell>" +
          "      <cell>0</cell>" +
          "      <cell><![CDATA[NULL]]></cell>" +
          "      <cell>false</cell>" +
          "      <cell>false</cell>" +
          "    </row>" +
          "    <row>" +
          "      <cell>8</cell>" +
          "      <cell>Fixed asset</cell>" +
          "      <cell>300</cell>" +
          "      <cell>0.00</cell>" +
          "      <cell>1000.00</cell>" +
          "      <cell>-1000.00</cell>" +
          "      <cell>0</cell>" +
          "      <cell><![CDATA[NULL]]></cell>" +
          "      <cell>true</cell>" +
          "      <cell>false</cell>" +
          "    </row>" +
          "  </rows>";
    }else if("5".equals(nodeid)){//二级数据
      xml = "<?xml version='1.0' encoding='utf-8'?>" +
          "  <rows>" +
          "    <page>1</page>" +
          "    <total>1</total>" +
          "    <records>1</records>" +
          "    <row>" +
          "      <cell>3</cell>" +
          "      <cell>Sub Cash 1</cell>" +
          "      <cell>1</cell>" +
          "      <cell>300.00</cell>" +
          "      <cell>200.00</cell>" +
          "      <cell>100.00</cell>" +
          "      <cell>1</cell>" +
          "      <cell><![CDATA[2]]></cell>" +
          "      <cell>true</cell>" +
          "      <cell>false</cell>" +
          "    </row>" +
          "  </rows>";
    }
    response.getWriter().write(xml);
  }
}
目录
相关文章
|
7月前
【sgTree】自定义组件:加载el-tree树节点整棵树数据,实现增删改操作。
【sgTree】自定义组件:加载el-tree树节点整棵树数据,实现增删改操作。
|
JavaScript
Vue使用Element的表格Table显示树形数据,多选框全选无法选中全部节点
Vue使用Element的表格Table显示树形数据,多选框全选无法选中全部节点
386 0
|
SQL 前端开发 搜索推荐
【Element-UI】实现动态树、数据表格及分页效果
在现代软件开发中,动态树、数据表格以及分页效果成为了许多应用的核心需求。随着业务规模和复杂性的增加,我们往往需要展示大量的层级结构数据,并且实现交互性强且高效的操作。 动态树提供了一种组织结构清晰、可伸缩的展示方式,使用户可以方便地查看和操作树节点。数据表格则是以表格形式呈现数据,在其中用户可以进行排序、筛选、编辑等操作。 而分页效果则能够将大量数据分割成易于管理和浏览的一页或一页的内容。这三种功能的结合,不仅使得我们能够更好地处理庞大的数据集合,同时也使得用户能够快速定位所需信息。 本文将介绍如何使用现代前端技术实现动态树、数据表格及分页
easyui的tree节点的获取和选中
easyui的tree节点的获取和选中
237 0
|
JavaScript
jqgrid清空表格
jqgrid清空表格
56 0
|
JSON JavaScript 数据格式
Elementui Tree 树形控件删除子节点
Elementui Tree 树形控件删除子节点
110 1
|
前端开发 JavaScript API
在 Vue3 + Element Plus 中生成动态表格,动态修改表格,多级表头,合并单元格
在 Vue 中,表格组件是使用频率及复杂度排名第一的组件,前端经常需要根据后台返回的数据动态渲染表格,比如动态表格如何生成,因为表格的列并不是固定的,在未知表格具体有哪些列的场景下,前端如何动态渲染表格数据。又或者需要把表格单元格进行合并处理,比如第一列是日期,需要把相同的日期进行合并,这样表格看起来会更加清晰。 本文手把手教你如何在 Vue3 + Element Plus 中创建表格、生成动态表格、创建动态多级表头、表格行合并、列合并等问题。如果你正在搭建后台管理工具,又不想处理前端问题,推荐使用卡拉云 ,卡拉云是新一代低代码开发工具,可一键接入常见数据库及 API ,无需懂前端,仅需拖拽即
3153 0
easyui tree 默认选中第一个元素
easyui tree 默认选中第一个元素
|
7月前
Element多级表格合并处理
Element多级表格合并处理
41 0
|
JSON JavaScript 前端开发
Elementui Tree 树形控件删除功能
Elementui Tree 树形控件删除功能
124 0
Elementui Tree 树形控件删除功能