选择特定类的所有空白,然后通过JavaScript移除父类

时间:2019-01-23 20:47:39

标签: javascript html

我有一个非常大的HTML表,其中包含许多行。这些行是根据我的数据库响应在javascript中设置的变量归档的。如果数据库响应为“”,则变量设置为“”。我想找到这个,如果JavaScript中为true,则删除整个父行。

我尝试了以下代码,但我认为我没有选择正确的单元格。我用'row'类标记了所有行,并用'emptytd'类标记了可能为空的单元格,以便于选择。预先感谢!

                var something =  "<tr class='row'>" +
                                 "<th>AA03</th>" +
                                 "<td>" + aa03TrainTaskNm + "</td>" +
                                 "<td class='emptytd'>" + aa03DueDt + "</td></tr>";

$('#something').html(somthing);
$('#myModal').modal("show");
$('td.emptytd:[value=" "]').parents('tr.row').hide();

2 个答案:

答案 0 :(得分:0)

您可以像这样遍历它们并检查其内容:

   $("td.emptytd").each(function(){
        if($(this).html() === "") $(this).parent().remove();
    })

答案 1 :(得分:0)

如果要一次删除所有有问题的行,可以执行以下操作:

document.querySelectorAll("td").forEach(function(el){
  if(el.innerHTML == " "){ 
    const row = el.parentNode;
    row.parentNode.removeChild(row);
  }
});

请注意,即使一行中只有一个“空”单元格也会触发整个行的删除。而且,如果单元格的内容不是单个空格键字符,那么什么都不会发生。 (如果要处理其他空格字符,则可以使用“ / \ s + /”查找1个或多个空格字符的任何字符串。)