10行。spreadjs就是传播js文件,在这一系列的 *** 作中,获取表格的话是需要使用10行的内容的,spreadjs是一款基于HTML5的纯前端表格控件,兼容450多种Excel公式,具备“高性能、跨平台、与Excel高度兼容”的产品特性。
1.在页面div中创建一个空白表,可以根据需要对其进行定制。
2.创建表之后,我们可以编写关键代码来动态生成表。我们编写了一个js方法来触发使用。
3在< TB >标签中,我们添加了标签,主要用于提供用户输入参数,而全局变量num主要用于区分每个添加参数的唯一id。
4.获取表中的数据,以供下图参考。
5.一旦我们获得了表中的数据,我们就应该将其转换成json数据的形式。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RunJS 演示代码</title>
<style>
{
padding: 0;
margin: 0;
}
a {
text-decoration: none;
color: black;
}
a:hover {
color: red;
}
wrap {
width: 900px;
height: 300px;
overflow-y: auto;
margin: auto;
}
table {
width: 800px;
border: 1px solid black;
border-collapse: collapse;
}
th {
background-color: orange;
}
td,th {
border: 1px solid black;
text-align: center;
}
table input[type=text] {
width: 100px;
}
</style>
<script>
var yugi = {
col: 6,
addRow: function(table) {
var vals = [avalue, bvalue, cvalue, dvalue, evalue, "<a href='###' onclick='yugimodify(table,this)'>修改</a> <a href='###' onclick='yugidel(table,this)'>删除</a>"];
var tr = tableinsertRow(tabletBodies[0]rowslength);
for (var i = 0; i < yugicol; i++) {
var td = trinsertCell(trcellslength);
tdinnerHTML = vals[i];
}
},
modify: function(table, row) {
var r = rowparentElementparentElement,
c = rcells;
if (/修改/gtest(rowinnerHTML)) {
for (var i = 0; i < clength - 1; i++) {
var ci = c[i];
var txt = documentcreateElement("input");
txttype = "text";
txtvalue = ciinnerHTML;
ciinnerHTML = "";
ciappendChild(txt);
}
rowinnerHTML = "保存";
} else {
for (var i = 0; i < clength - 1; i++) {
var ci = c[i];
ciinnerHTML = cichildren[0]value;
}
rowinnerHTML = "修改";
}
},
del: function(table, row) {
var ind = rowparentElementparentElementrowIndex;
tabletBodies[0]deleteRow(ind);
}
}
</script>
</head>
<body>
<fieldset class="wrap">
<legend>学生信息列表</legend>
<div>
<input type="text" id="a" />
<input type="text" id="b" />
<input type="text" id="c" />
<input type="text" id="d" />
<input type="text" id="e" />
<input type="button" value="添加" onclick="yugiaddRow(table)" />
</div>
<table id="table">
<tr>
<th>学号</th>
<th>姓名</th>
<th>年龄</th>
<th>学历</th>
<th>性别</th>
<th>地址</th>
</tr>
</table>
</fieldset>
</body>
</html>
这个嘛,太简单。。。。注意的是比如第一列 ,tr中一个span,一个input,当span显示的时候,input隐藏,input显示时span隐藏就好了,,,,原理基本这样最后保存或删除,修改的时候用ajax向数据库提交就行了,,,原理基本这样,,,自己想一下哈,有利于自己发展
你在动态添加每一行的时候应该给此行 tr 添加一个 class,例如 <tr class="data"> 说明此行为数据,这样在 *** 作的时候会方便很多,不会影响其它 tr,例如标题栏(条形码、商品编码)。
<script type="text/javascript">windowonload = function() {
// 这里的 add 要对应你添加单据按钮的 id
documentgetElementById("add")onclick = function() {
// 这里的 table 要对应你表单的 id
var table = documentgetElementById("table"),
data_rows = tablegetElementsByTagName("tr");
for(var i = data_rowslength - 1; i >= 0; i--) {
// 这里的 data 要对应数据行的 class
if(data_rows[i]classNameindexOf("data") > -1) {
var cells = data_rows[i]getElementsByTagName("td");
// 只检查前面 9 个 td,忽略备注和 *** 作
for(var a = 0; a < 9; a++) {
// 无内容
if(cells[a]innerHTML === "") {
// 删除此行
tabledeleteRow(i);
break;
}
}
}
}
// tr 删除完毕,继续其它工作
//
};
};
</script>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)