javascript - 从目录 (AD) 中读取的 HTML 中删除电子邮件签名中的行
问题描述
我正在尝试通过 jquery 或 javascript 删除 html 中的一行。我正在从目录中读取,但如果一行中没有信息,我不希望它可见。假设我有两行,目录中的用户没有手机号码,如何为他们删除?
我真的尝试了很多东西,但我一定错过了一些东西。
<tr>
<td>email: %%email%%</td>
</tr>
<tr>
<td>mobile: %%MobileNumber%%</td>
</tr>
我会假设该行只会为没有手机号码的用户删除。
解决方案
您需要将文本设置为变量,然后在“:”之后找到子字符串,它将返回 %%MobileNumber%%。
如果子字符串为空,那么我们将其隐藏。
如您所见,第三个td
没有所需的文本,因此它被隐藏了。
$(function() {
$('td').each(function() {
var str = $(this).text();
var sub = str.substring(
str.indexOf(':', 1) + 1
);
if (sub == '') {
// or .remove()
$(this).hide();
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
<tbody>
<tr>
<td>email: %%email%%</td>
</tr>
<tr>
<td>mobile: %%MobileNumber%%</td>
</tr>
<tr>
<td>mobile:</td>
</tr>
</tbody>
</table>
如果您只希望它用于包含“mobile:”的 td
// find if a td starts with "mobile:" and if the substring after is empty
if ( str.match("^mobile:") && sub == '' ) {
$(this).hide();
}
推荐阅读
- java - OpenGL ES 3.0 中的粒子系统优化
- python-3.x - AttributeError:'str' 对象没有属性'append'。我该如何解决这个错误
- bash - 如何使用 bash 计算文件中某行的出现次数?(有加号)
- python - 使用列表循环将变量添加到元组
- c# - 如何根据另一个列表中的表单顺序对列表进行排序
- mysql - 错误:“选择对于此服务器版本无效,应为:'(', WITH”
- python - Python,从上级目录导入将不起作用
- python - 如何打开请求会话?
- mysql - 如何编写 SQL 查询来计算每个用户的平均每日广告展示次数?
- python - Python 重构 - 多个类中的冗余函数