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

该方法添加数据行到表格,默认情况下,新行数据添加到表格的最后面。
new_id 新行的ID, 必须唯一
text 行的值,可以指定列表或者数组
ind 新行的下标(可选),默认添加到表格的末尾
实例如下:
// 添加数据到表格 grid.addRow(newId, ["text1", "text2"]); // 通过列表的方式添加数据 grid.addRow(newId, "text1,text2", 1); // 通过数组的方式来添加数据 grid.addRow(newId, ["text1", "text2"], 2);
从表格删除一行数据。
row_id 数据表行ID
实例如下:
// 删除行ID为“row1”的数据行
mygrid.deleteRow("row1");返回当前被选中行的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>