2015-02-07 71 views
0

我有这个问题,似乎令人困惑,因为问题基本上超过了一半 - 我能够通过单击链接删除表单域,但它不能清除完成形式 - 只是两张表中的一张。为了更好地证明这一点,我点击了“ - ”符号前后拍摄了两张屏幕截图,这两个符号应该可以移除它们,但它只能删除一个!我只能通过点击上面的“ - ”符号来删除上面的表格,以便完全删除整个表格。我不想在两次点击中删除整个表格(两张表格)。我希望他们只需点击一下即可移除。只需点击“ - ”号。通过Javascript中的父节点同时删除两个表

注意:每个表格都包含两个四行的表格 - 两行/表格 - 请看下面的图片以作进一步的说明!

点击之前 “ - ”:

Before clicking "-"

在点击 “ - ”:

After clicking "-"

下面是我打电话的onclick以 Javascript函数删除表 -

<script type="text/javascript"> 
function removeFields1(elm1){ 
var tr1 = elm1.parentNode.parentNode.parentNode; 
tr1.remove(); 
var tr = elm1.parentNode.parentNode.parentNode; 
//getElementById("maywe"); 
tr.remove(); 

} 

下面是我为了使用创建的JavaScript代码“ - ”在表单字段标志,当它被添加到表:

var td7a = document.createElement("td"); 
td7a.valign = "top";   
var remove1 = document.getElementById("Remove");   
remove1 = document.createElement("a"); 
remove1.id="Remove"; 
remove1.name="Remove"; 
remove1.href="#"; 
remove1.text="-"; 
remove1.onclick=function(){ 
removeFields1(this);}; 
td7a.appendChild(remove1); 

tr.appendChild(td7a); 

如何这个问题可以解决?

P.S.请关注Javascript部分中的removeFields1(elm1){函数,以解决此问题。

P.S.我希望原始表单保持原样 - 表单是动态创建的...所以应该删除的表格中只有2个表格是我专门点击删除的表格...他们应该一次删除两个表格。 。两张表格/表格

+0

你能告诉我们创建页面的html代码吗?或者你完全使用Javascript完成它。我不知道已经创建了多少个父元素,并且由于您试图删除elm1元素上方的元素3父元素,所以我想查看它是哪个元素。 – 2015-02-07 10:46:31

+0

没有问题...先生 - 这是整个代码供你分析http://pastebin.com/c8AA1B3f – 2015-02-07 10:55:36

+0

上面的链接包括PHP/Javascript和HTML代码......希望这可以帮助我们解决问题!感谢名单! – 2015-02-07 10:56:14

回答

0

正如您所提到的,您希望删除表格中的所有表格。因此,首先找到表单元素,然后查找所有表格的子元素,然后删除这些元素。以下JS代码可能会对您有所帮助。

function removeFields1(elm1){ 
    parentFrm = findParentForm(elm1); 
    var allTables = parentFrm.getElementsByTagName('table'); 
    for(i=0;i<allTables.length;i++){ 
    allTables[i].remove(); 
    } 
} 
function findParentForm(elem){ 
    var parent = elem.parentNode; 
    if(parent && parent.tagName != 'FORM'){ 
    parent = findParentForm(parent); 
    } 
    return parent; 
} 

如果您使用Jquery使用预定义的函数,那将会很好。

+0

其不工作芽 – 2015-02-07 19:44:05

+0

它只能删除原始表单中的顶级节点...我想要原始表单停留 - 表单是动态创建的....所以应该删除的表单中只有2个表格是我特别点击删除的那些...他们应该一次删除两个...两个表格/表格 – 2015-02-07 21:17:51

相关问题