为何空文本锚点长度显示为3?求无需长度判断的移除方法
移除含空白字符的空a标签解决方案
问题背景
你需要移除无实际内容的a标签,但这类标签内部存在换行、空格等空白字符,导致$(this).text()返回的内容长度为3,直接判断空字符串(!$(this).text())或长度为0($(this).text().length === 0)都无法匹配,只能用长度<4这种不够严谨的临时判断。
解决方案
核心逻辑是先清除文本首尾的空白字符,再判断是否为空。可以借助jQuery工具方法或原生字符串方法实现,两者都能移除字符串首尾的空格、换行符、制表符等空白字符。
代码实现
方法一:使用jQuery的$.trim()
if (!$.trim($(this).text())) { $(this).remove(); }
方法二:使用原生trim()方法
if ($(this).text().trim().length === 0) { $(this).remove(); }
原问题代码参考
目标HTML结构
<a href="https://www.example.com/abc/xyz"> </a>
原无效尝试方法
- 方法一:
if( !$(this).text() ) { $(this).remove(); }
- 方法二:
if( $(this).text().length === 0 ) { $(this).remove(); }
内容的提问来源于stack exchange,提问作者Rahul Dravid
相关产品推荐
相关产品推荐

