Javascript 删除行后,删除行下的DataTables行将未定义
我有一个Javascript 删除行后,删除行下的DataTables行将未定义,javascript,jquery,html,datatables,Javascript,Jquery,Html,Datatables,我有一个数据表。每行上都有一个删除按钮。使用.remove()函数删除一行后,相应的行将被删除,但随后单击保存按钮,删除行下方的行将被取消定义 以下是示例代码: HTML <body> <form method="POST"></form> <div class="container"> <table cellpadding="0" cellspacing="0" border="0" class="dataTable" id="
数据表
。每行上都有一个删除按钮
。使用.remove()
函数删除一行后,相应的行将被删除,但随后单击保存按钮
,删除行下方的行将被取消定义
以下是示例代码:
HTML
<body>
<form method="POST"></form>
<div class="container">
<table cellpadding="0" cellspacing="0" border="0" class="dataTable" id="example">
<thead>
<tr>
<th>Name</th>
<th>Delete</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type ="text" id="name_0" value ="hello0"/></td>
<td><button id="btn_0" onclick="del(this);">Delete</button></td>
</tr>
<tr>
<td><input type ="text" id="name_1" value ="hello1"/></td>
<td><button id="btn_1" onclick="del(this);">Delete</button></td>
</tr>
<tr>
<td><input type ="text" id="name_2" value ="hello2"/></td>
<td><button id="btn_2" onclick="del(this);">Delete</button></td>
</tr>
<tr>
<td><input type ="text" id="name_3" value ="hello3"/></td>
<td><button id="btn_3" onclick="del(this);">Delete</button></td>
</tr>
</tbody>
</table>
<input type="button" value="Save" id="btnSave"/>
</div>
</body>
这里有一个不工作的人
如何删除一行,然后单击保存按钮
,删除行下方的行不应未定义
任何帮助都将不胜感激。这是因为删除行后,行索引和输入元素的ID之间不匹配 短期解决方法是使用以下代码:
alert($(this).find("input[type=text]").val());
有关代码和演示,请参阅。发生这种情况是因为删除行后,行索引和输入元素的ID不匹配
$(document).ready(function () {
$('#btnSave').click(function () {
$('#example tbody tr').each(function () {
alert($(this).find("td:eq(0)").find('input').val());
});
});
});
function del(element) {
$(element).closest('tr').remove();
}
短期解决方法是使用以下代码:
alert($(this).find("input[type=text]").val());
有关代码和演示,请参阅
$(document).ready(function () {
$('#btnSave').click(function () {
$('#example tbody tr').each(function () {
alert($(this).find("td:eq(0)").find('input').val());
});
});
});
function del(element) {
$(element).closest('tr').remove();
}