无法使用javascript添加表行
无法使用javascript添加表行,javascript,html,Javascript,Html,我有一段代码。我的表格有一个下拉菜单,其中有两个文本框字段和一个用于删除按钮的字段 这是我的桌子。 这是我的HTML代码 <table id="tbl" border="1"> <tr> <td>Group</td> <td>Subject</td> <td>Reg.Number</td>
我有一段代码。我的表格有一个下拉菜单,其中有两个文本框字段和一个用于删除按钮的字段
这是我的桌子。
这是我的HTML代码
<table id="tbl" border="1">
<tr>
<td>Group</td>
<td>Subject</td>
<td>Reg.Number</td>
<td>Delete?</td>
</tr>
<tr>
<td> <select id='group'>
<option value='0'>----------</option>
</select></td>
<td> <input type="text" id="sub" /></td>
<td><input type="text" id="regno" /></td>
<td><input type="button" id="del" value="Delete" onclick="deleteRow(this)"/></td>
</tr>
</table>
<input type="button" id="addmore" value="Add more" onclick="insRow()"/>
我面临的问题有点奇怪,这意味着,如果我在表中再添加一个下拉列表。我尝试了一切,谷歌搜索,读了很多文章,但没有一篇对我有帮助。请帮我解决我的问题。
谢谢。只需将
.getElementsByTagName('input')
替换为.getElementsByTagName('select')
只需将
.getElementsByTagName('input')
替换为.getElementsByTagName('select')
当您在代码中找不到问题时,请按“F12”按钮,然后在“控制台”中查看打印的内容,然后您将找到它
当您在代码中找不到问题时,请按“F12”按钮,然后在“控制台”中查看打印的内容,然后您将找到它
您应该查看浏览器的控制台以了解可能的错误。在您的第二把小提琴中,
new_row.cells[1]
没有任何输入元素,您的代码将在inp1.id
行中断,因为inp1
为null
您应该查看浏览器控制台以了解可能的错误。在第二把小提琴中,new_row.cells[1]
没有任何输入元素,代码将在inp1.id
行中断,因为inp1
为null
function deleteRow(row)
{
var i=row.parentNode.parentNode.rowIndex;
document.getElementById('tbl').deleteRow(i);
}
function insRow()
{
console.log( 'hi');
var x=document.getElementById('tbl');
var new_row = x.rows[1].cloneNode(true);
var len = x.rows.length;
var inp1 = new_row.cells[1].getElementsByTagName('input')[0];
inp1.id += len;
inp1.value = '';
var inp2 = new_row.cells[2].getElementsByTagName('input')[0];
inp2.id += len;
inp2.value = '';
x.appendChild( new_row );
}