动态向dhtmlxGrid表格添加和删除数据

通过dhtmlxGrid提供的addRow和deleteRow方法动态的向表格中添加数据。在删除之前我们通过getSelectedRowId方法获取被选中行的rowId,通过onRowSelect事件来控制删除按钮是否允许被使用。

通过dhtmlxGrid提供的addRow和deleteRow方法动态的向表格中添加数据。在删除之前我们通过getSelectedRowId方法获取被选中行的rowId,通过onRowSelect事件来控制删除按钮是否允许被使用。

先看看效果图吧,如下图:

动态从dhtmlxGrid中添加和删除数据

addRow(new_id, text, ind)

该方法添加数据行到表格,默认情况下,新行数据添加到表格的最后面。

new_id    新行的ID, 必须唯一

text         行的值,可以指定列表或者数组

ind          新行的下标(可选),默认添加到表格的末尾

实例如下:

// 添加数据到表格
grid.addRow(newId, ["text1", "text2"]);
// 通过列表的方式添加数据
grid.addRow(newId, "text1,text2", 1);
// 通过数组的方式来添加数据
grid.addRow(newId, ["text1", "text2"], 2);

deleteRow(row_id)

从表格删除一行数据。

row_id    数据表行ID

实例如下:

 // 删除行ID为“row1”的数据行
 mygrid.deleteRow("row1");

getSelectedRowId()

返回当前被选中行的ID。如果没有行被选中,则返回null。实例如下:

// 获取选中行的Id
mygrid.getSelectedRowId();

实例:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "https://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>dhtmlxGrid测试</title>
<link type="text/css" rel="stylesheet" href="../../js/dhtmlxGrid/dhtmlxgrid.css" />
<link type="text/css" rel="stylesheet" href="../../js/dhtmlxGrid/skins/dhtmlxgrid_dhx_skyblue.css" />
<script type="text/javascript" src="../../js/jquery-1.9.0.min.js"></script>
<script type="text/javascript" src="../../js/dhtmlxGrid/dhtmlxcommon.js"></script>
<script type="text/javascript" src="../../js/dhtmlxGrid/dhtmlxgrid.js"></script>
<script type="text/javascript" src="../../js/dhtmlxGrid/dhtmlxgridcell.js"></script>
</head>
<body>
<div id="gridbox" style="width:400px;height:150px"></div><br/>
<label>姓名</label>
<input id="name" type="text" style="width:100px" value="张三"/>
<label>性别</label>
<input id="sex" type="text" style="width:80px" value="男"/>
<button id="add">新增</button>
<button id="del" disabled="disabled">删除</button>
<script type="text/javascript">
$(function(){
    var mygrid = new dhtmlXGridObject('gridbox');
    mygrid.setImagePath("../../js/dhtmlxGrid/imgs/");
    mygrid.setHeader("姓名,性别");
    mygrid.setInitWidths("100,*");
    mygrid.setColAlign("left,left");
    mygrid.setColTypes("ro,ro");
    mygrid.init();
    mygrid.setSkin("dhx_skyblue");
    mygrid.attachEvent("onRowSelect", function(rowId, cellId){
    	$("#del").attr("disabled", false);
    });
    
    // 新增
    var id = 1;
    $("#add").click(function(){
    	mygrid.addRow(id++, [
    	    $("#name").val(),
    	    $("#sex").val()
    	]);
    })
    
    // 删除
    $("#del").click(function(){
    	mygrid.deleteRow( mygrid.getSelectedRowId() );
    })
});
</script>
</body>
</html>
与肝胆人共事,无字句处读书。——周恩来
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
其他应用
公众号