删除 html 中的空白 tr
本文关键字:空白 tr html 删除 | 更新日期: 2023-09-27 18:37:23
我的项目中有一个默认模板。名称、城市和国家/地区等项目将替换为用户数据。
有时数据被替换为空数据,使行留空。我想删除该特定的空行
我的 html 模板如下:
<tr>
<td>City</td>
<td> </td>
<td> </td>
</tr>
这是我的 HTML 模板。如果城市被替换为空,那么我想删除整行。
我想删除替换为空值的数据行
由于我们正在从第三方获取模板,因此 Jquery 是我正在寻找的最后一个选项。还有其他方法可以解决这个问题吗?
任何帮助将不胜感激
我需要解析一个 html 模板。Html 模板的一部分如下所示
<table>
<tr>
<td>Name</td>
<td> </td>
<tr>
<tr>
<td>City</td>
<td> </td>
<tr>
<tr>
<td>Country</td>
<td> </td>
<tr>
</table>
然后,使用 C# 将上述模板替换为用户数据。
if (obj.City == null || obj.City == "Specific Parameter")
{
strGetBody = strGetBody.Replace("City", "");
}
else
{
strGetBody = strGetBody.Replace("City", obj.City);
}
以下是将通用数据替换为用户数据后的模板
<table>
<tr>
<td>Abc</td>
<td> </td>
<tr>
<tr>
<td>** **</td>
<td> </td>
<tr>
<tr>
<td>India</td>
<td> </td>
<tr>
</table>
我想解析值为空的 tr。如果该行的 td 值为 null,是否有任何可能的方法可以解析 tr 元素并删除整行?
使用一些代码进行最新编辑。我假设您有一个函数,该函数strGetBody
为参数,并且需要根据某个对象返回修改后的输出......如果是这样的话,为什么不直接不返回任何东西呢?
private string myFunctionForEachTR(string strGetBody, myObject obj)
{
if (obj.City == null || obj.City == "Specific Parameter")
return string.Empty;
return strGetBody.Replace("City", obj.City);
}
更新
根据您的要求,与其解析 HTML(如果您发现这很困难,解析 HTML 对您来说可能看起来非常困难),不如在返回模板之前执行此操作:
strGetBody = strGetBody.Replace("<tr>'n'r<td>'n'r</td>'n'r<td> </td>'n'r</tr>","");
只需删除整个空<tr>
标签。请注意,您可能需要摆弄换行符(可能仅'r
、'n'r
或 'r'n
),也许还需要空格来找出模板的精确定义方式以匹配Replace
函数。
我在所需条件下用<tr style="display:none">
替换了<tr>
,效果惊人:)
if (obj.City == null || obj.City == "Specific Parameter")
{
if(strGetBody.Contains("<tr id='"city'">"))
{
strGetBody = strGetBody.Replace("<tr id='"city'">", "<tr id='"city'" style='"display:none'">");
}
}
else
{
strGetBody = strGetBody.Replace("City", obj.City);
}
有两种
方法。
- 在删除标记中的值之前
<tr>
请检查该值是否为 null 并将<tr>
属性隐藏。 删除值后使用 js
document.getElementById("xyz").style.visibility="hidden";