Javascript 使用rowIndex在单击的行下方插入新行
下面是我编写的代码,用于执行以下操作Javascript 使用rowIndex在单击的行下方插入新行,javascript,php,html,Javascript,Php,Html,下面是我编写的代码,用于执行以下操作 每个表行包含一个“+”按钮 单击按钮时,代码应找到所单击行的行索引 然后,应将新行添加到选中行的(rowindex+1)位置。ie,就在单击的行下方 但现在出现的问题是 按钮内部的onclick函数不起作用,如果我把它写在里面,它就会起作用 “cell3”中的onclick按钮不起作用 因为我是php的初学者,也是javascript的初学者,有人能帮我详细解释一下吗 <script> function myFunction(x) { v
- 每个表行包含一个“+”按钮
- 单击按钮时,代码应找到所单击行的行索引
- 然后,应将新行添加到选中行的(rowindex+1)位置。ie,就在单击的行下方
- 按钮内部的onclick函数不起作用,如果我把它写在里面,它就会起作用
- “cell3”中的onclick按钮不起作用
<script>
function myFunction(x) {
var table = document.getElementById("myTable");
var rowno=x.rowIndex;
alert(rowno);
var row = table.insertRow(rowno+1);
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
cell1.innerHTML = '<input type="text"s name="txt1">';
cell2.innerHTML = '<input type="text" name="txt2">';
cell3.innerHTML = '<input type="button" name="btn" value="+" onclick="myFunction(this)">';
}
</script>
函数myFunction(x){
var table=document.getElementById(“myTable”);
var rowno=x.rowIndex;
警报(rowno);
var行=table.insertRow(行号+1);
var cell1=行插入单元格(0);
var cell2=行插入单元格(1);
var cell3=行插入单元格(2);
cell1.innerHTML='';
cell2.innerHTML='';
cell3.innerHTML='';
}
第1行第1单元
第1行第2单元
+
第1行第1单元
第1行第2单元
+
第1行第1单元
第1行第2单元
+
您正在将按钮传递给函数,并尝试查找其行索引,但这是不可能的。您需要找到按钮父行的行索引。我已经修改了javascript代码来选择它。这应该行得通
<script type="text/javascript">
function myFunction(x) {
var table = document.getElementById("myTable");
var rowno = x.parentNode.parentNode.rowIndex; //this selects the button's parent row
alert(rowno);
var row = table.insertRow(rowno + 1);
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
cell1.innerHTML = '<input type="text"s name="txt1">';
cell2.innerHTML = '<input type="text" name="txt2">';
cell3.innerHTML = '<input type="button" name="btn" value="+" onclick="myFunction(this)">';
}
</script>
函数myFunction(x){
var table=document.getElementById(“myTable”);
var rowno=x.parentNode.parentNode.rowIndex;//这将选择按钮的父行
警报(rowno);
var行=table.insertRow(行号+1);
var cell1=行插入单元格(0);
var cell2=行插入单元格(1);
var cell3=行插入单元格(2);
cell1.innerHTML='';
cell2.innerHTML='';
cell3.innerHTML='';
}
Aw..非常感谢@dennisjsk这正是我想要的..!!:D
<script type="text/javascript">
function myFunction(x) {
var table = document.getElementById("myTable");
var rowno = x.parentNode.parentNode.rowIndex; //this selects the button's parent row
alert(rowno);
var row = table.insertRow(rowno + 1);
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
cell1.innerHTML = '<input type="text"s name="txt1">';
cell2.innerHTML = '<input type="text" name="txt2">';
cell3.innerHTML = '<input type="button" name="btn" value="+" onclick="myFunction(this)">';
}
</script>