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按钮不起作用

因为我是php的初学者,也是javascript的初学者,有人能帮我详细解释一下吗

<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>