JS
function getParent (el, parentTag) {do {
el = elparentNode;
} while (el && eltagName !== parentTag);
return el;
}
function removeTr (el) {
el = getParent(el, 'TR');
var rowIndex = elrowIndex;
el = getParent(el, 'TABLE');
eldeleteRow(rowIndex);
}
HTML
<table><tbody>
<tr>
<td><input type="button" onclick="removeTr(this)" value="删除" />1</td>
</tr>
<tr>
<td><input type="button" onclick="removeTr(this)" value="删除" />2</td>
</tr>
<tr>
<td><input type="button" onclick="removeTr(this)" value="删除" />3</td>
</tr>
<tr>
<td><input type="button" onclick="removeTr(this)" value="删除" />4</td>
</tr>
</tbody>
</table>
没明白楼主的具体意思,如果是用JAVA写的话,则取得的数据是一个结果集,有了结果集就可以知道行数了。如果是在数据库中需要得到行数,则如楼上的兄弟写的select count() from 表名 就可以了,这样更直接简单。
你可以使用 JavaScript 中自带的 rowIndex 和 cellIndex 来获取行和列的键值 (从0开始)
点击 checkbox,获取 parentNode (也就是 td),tdcellIndex 就是所在列的键值
点击 checkbox,获取 parentNodeparentNode (也就是 tr),trrowIndex 就是所在行的键值
<script type="text/javascript">// 点击
documentonclick = function(e) {
// 兼容 event 和 target
e = e || windowevent;
var target = etarget || esrcElement;
// 确认是 checkbox
if(targettagNametoLowerCase() === "input"
&& targettype === "checkbox") {
// 获取行列键值
var row_num = targetparentNodeparentNoderowIndex;
var col_num = targetparentNodecellIndex;
// 输出
alert(row_num + " " + col_num);
}
};
</script>
因为键值是从 0 开始,一般需要 +1 才是行列数,但因为你表单中第一行个第一列都是文字,所以不需要 +1 正好输出需要的数字,例如点击周四 + 6,会输出 4 6
表格的第一行为thead中的th
剩下的数据放到tbody中
最后那一行添加的放到tfoot中
对tbody下面的所有tr绑定一个点击事件
事件中获取这个tr下的所有td,就可以获取这行的数据了
大概代码如下:
var trs =documentgetElementById("tbodyId")getElementsByTagName("tr");
for(int i=0;i<=trslength;i++)
{
var tr = trs[i];
var tds=trgetElementsByTagName("td");
//下面遍历tds就可以去获取数据了
//把数据放到下面的表单就好了
//然后提交数据,在服务端进行修改
}
var arr=[
["1","2017-10-19","小明","54","13444444"],
["2","2017-10-20","小强","18","13888888"],
["3","2017-10-21","小刚","17","13999999"]
];
arrlength // 3
以上就是关于js如何取得当前行数,并删除全部的内容,包括:js如何取得当前行数,并删除、怎么用js语句得出数据库里我取数据的行数。用sql语句也行、用JS如何获得table中checkbox所在的行列值弄了一个上午了好捉急!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)