【发布时间】:2014-02-11 22:34:04
【问题描述】:
我正在尝试同时删除动态表中的两个表行,但我无法同时删除多个行。我有一个表格,它在一个 tr 中显示文本和一个删除按钮,在它之后的下一个 tr 中显示其他相关文本。当我按下第一行上的删除按钮时,该行被删除,但之后的行没有被删除。我尝试使用此link 获取下一行的值/地址,但它似乎对我不起作用。
正在工作中: http://jsfiddle.net/DLqLW/3/
删除行的按钮是这样编码的:
<input type="button" id="<?php echo $str; ?>" class="button-add" name="butcli" value="-" onClick="deleteRow(this)"></input>
它调用的函数是:
function deleteRow(el) {
while (el.parentNode && el.tagName.toLowerCase() != 'tr') {
el = el.parentNode;
}
if (el.parentNode && el.parentNode.rows.length > 1) {
el.parentNode.removeChild(el);
}
}
我正在努力解决如何删除它之后的下一行。如果有人可以提供一些帮助,那就太好了!
【问题讨论】:
-
表格的HTML?也许是小提琴?
-
试图搞定,但目前我也遇到了一些问题。
-
jsfiddle.net/DLqLW/3 我已经创建了一个小提琴,但 javascript 无法正常工作,应该发生的是,如果您单击包含它们的任何行上的减号按钮,它正下方的行应该也被删除。
-
小提琴不起作用,因为它需要在
<head>中声明的函数,正如您将在我的中看到的那样:jsfiddle.net/digitalextremist/DLqLW/5 - 此外,它确实需要 parentNode.rows.length > 0正如@MazeHatter 所说。 -
jsfiddle.net/9Zv83 更新小提琴;现在小提琴正在工作,我想要完成的是,例如,如果我删除了包含数字 2 的行,那么它下面的行也应该被删除。我尝试了更快提到的 nextSibling 函数,但它没有产生任何结果。
标签: javascript html