js中table里的每一行怎么去获得它的行号?
比如<table><tr><td><td></tr><tr><td>在这里有个button,这么在点button之后获得这行的行号<td></tr></table>主要是...
比如
<table>
<tr>
<td><td>
</tr>
<tr>
<td>在这里有个button,这么在点button之后获得这行的行号<td>
</tr>
</table>
主要是想做个button,点一下button就删除button所在的那一行
function tj()
{
var table = document.getElementById("t");
var newTr = table.insertRow();
var newTd1 = newTr.insertCell();
var newTd2 = newTr.insertCell();
var newTd3 = newTr.insertCell();
var newTd4 = newTr.insertCell();
newTd1.innerHTML = "";
newTd2.innerHTML = "";
newTd3.innerHTML = "";
newTd4.innerHTML = "<input type='button' value='删除' onclick='sc()'/>";
newTr.style.backgroundColor = "#E6E6E6";
newTr.align = "center";
}
function sc()
{
if(confirm("确定要删除这一行吗?"))
{
}
}
麻烦高手补充了 展开
<table>
<tr>
<td><td>
</tr>
<tr>
<td>在这里有个button,这么在点button之后获得这行的行号<td>
</tr>
</table>
主要是想做个button,点一下button就删除button所在的那一行
function tj()
{
var table = document.getElementById("t");
var newTr = table.insertRow();
var newTd1 = newTr.insertCell();
var newTd2 = newTr.insertCell();
var newTd3 = newTr.insertCell();
var newTd4 = newTr.insertCell();
newTd1.innerHTML = "";
newTd2.innerHTML = "";
newTd3.innerHTML = "";
newTd4.innerHTML = "<input type='button' value='删除' onclick='sc()'/>";
newTr.style.backgroundColor = "#E6E6E6";
newTr.align = "center";
}
function sc()
{
if(confirm("确定要删除这一行吗?"))
{
}
}
麻烦高手补充了 展开
6个回答
展开全部
/*********↑不要把简单的问题复杂化**********/
/*****不管是动态生成还是静态生成,此方法通杀******/
直接代码复制出去运行,我已经尽量写简单了,如果你还是不明白,那么...我...
<html>
<head>
<title>1</title>
<script>
//得到行对象
function getRowObj(obj)
{
var i = 0;
while(obj.tagName.toLowerCase() != "tr"){
obj = obj.parentNode;
if(obj.tagName.toLowerCase() == "table")return null;
}
return obj;
}
//根据得到的行对象得到所在的行数
function getRowNo(obj){
var trObj = getRowObj(obj);
var trArr = trObj.parentNode.children;
for(var trNo= 0; trNo < trArr.length; trNo++){
if(trObj == trObj.parentNode.children[trNo]){
alert(trNo+1);
}
}
}
//删除行
function delRow(obj){
var tr = this.getRowObj(obj);
if(tr != null){
tr.parentNode.removeChild(tr);
}else{
throw new Error("the given object is not contained by the table");
}
}
</script>
</head>
<body>
<table border = "1">
<tr>
<td>A<input type="button" value="A" onclick="getRowNo(this)">getRowNo<td>
</tr>
<tr>
<td>B<input type="button" value="B" onclick="delRow(this)">delRow<td>
</tr>
<tr>
<td>C<input type="button" value="C" onclick="getRowNo(this)">getRowNo</td>
</tr>
<tr>
<td>D<input type="button" value="D" onclick="getRowNo(this)">getRowNo</td>
</tr>
</table>
</body>
<html>
/*****不管是动态生成还是静态生成,此方法通杀******/
直接代码复制出去运行,我已经尽量写简单了,如果你还是不明白,那么...我...
<html>
<head>
<title>1</title>
<script>
//得到行对象
function getRowObj(obj)
{
var i = 0;
while(obj.tagName.toLowerCase() != "tr"){
obj = obj.parentNode;
if(obj.tagName.toLowerCase() == "table")return null;
}
return obj;
}
//根据得到的行对象得到所在的行数
function getRowNo(obj){
var trObj = getRowObj(obj);
var trArr = trObj.parentNode.children;
for(var trNo= 0; trNo < trArr.length; trNo++){
if(trObj == trObj.parentNode.children[trNo]){
alert(trNo+1);
}
}
}
//删除行
function delRow(obj){
var tr = this.getRowObj(obj);
if(tr != null){
tr.parentNode.removeChild(tr);
}else{
throw new Error("the given object is not contained by the table");
}
}
</script>
</head>
<body>
<table border = "1">
<tr>
<td>A<input type="button" value="A" onclick="getRowNo(this)">getRowNo<td>
</tr>
<tr>
<td>B<input type="button" value="B" onclick="delRow(this)">delRow<td>
</tr>
<tr>
<td>C<input type="button" value="C" onclick="getRowNo(this)">getRowNo</td>
</tr>
<tr>
<td>D<input type="button" value="D" onclick="getRowNo(this)">getRowNo</td>
</tr>
</table>
</body>
<html>
展开全部
要用到动态的DHTML,我的代码如下,请务必试验一下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<script language="javascript">
var tableBody = null;
function addRows(){
tableBody = document.getElementById("resultsTable");
var cell = document.createElement("<tr>");
var cell2 = document.createElement("<td>")
cell.appendChild(cell2)
cell2.setAttribute("align","center");
var text = document.createTextNode("11111");
cell2.appendChild(text);
tableBody.appendChild(cell);
}
function removeRows(){
tableBody = document.getElementById("resultsTable");
if(tableBody.childNodes.length>0){
tableBody.removeChild(tableBody.childNodes[0]);
}
}
</script>
<body>
<span id="header">
</span>
<input type="button" value="Add-Row" onclick="addRows()"><input type="button" value="Remove-Row" onclick="removeRows()">
<center>
<table width="25%" border="1" onload="create()">
<tbody id="resultsTable">
</tbody>
</table>
</center>
</body>
</html>
如果有问题,欢迎发消息讨论。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<script language="javascript">
var tableBody = null;
function addRows(){
tableBody = document.getElementById("resultsTable");
var cell = document.createElement("<tr>");
var cell2 = document.createElement("<td>")
cell.appendChild(cell2)
cell2.setAttribute("align","center");
var text = document.createTextNode("11111");
cell2.appendChild(text);
tableBody.appendChild(cell);
}
function removeRows(){
tableBody = document.getElementById("resultsTable");
if(tableBody.childNodes.length>0){
tableBody.removeChild(tableBody.childNodes[0]);
}
}
</script>
<body>
<span id="header">
</span>
<input type="button" value="Add-Row" onclick="addRows()"><input type="button" value="Remove-Row" onclick="removeRows()">
<center>
<table width="25%" border="1" onload="create()">
<tbody id="resultsTable">
</tbody>
</table>
</center>
</body>
</html>
如果有问题,欢迎发消息讨论。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<table>
<tr id="testId">
<td><td>
</tr>
<tr>
<td>在这里有个button,这么在点button之后获得这行的行号<td>
</tr>
</table>
.getElementById("testId");
<tr id="testId">
<td><td>
</tr>
<tr>
<td>在这里有个button,这么在点button之后获得这行的行号<td>
</tr>
</table>
.getElementById("testId");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
HTML是动态生成的还是静态的?
动态的话,就好办了。你在生成的时候就给这行放一个隐藏域,记下行号。以后就可以直接拿到行号。
动态的话,就好办了。你在生成的时候就给这行放一个隐藏域,记下行号。以后就可以直接拿到行号。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用获得行号,不同行用不同的按钮ID。这样就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询