我需要用jquery检查 anchor 元素只包含文本,而不包含其他任何标签(img,b)或其他任何东西。
<a href="">TV</a>
应该找到,但是:
<a href=""><img /></a>
或者:
<a href=""><span>TV</span></a>
或其他任何HTML标记,都找不到。
我该怎么做呢?
提前致谢。
最佳答案
我们可以使用 filter()
函数删除具有子元素的元素(使用 children()
方法检查)。
var emptyAs = $('a').filter(function () {
return $(this).children().length == 0;
});
您也可以将
:not()
selector与 :has()
selector结合使用;var moreEmptyAs = $('a:not(:has(*))');
您可以在下面的JSFiddle中看到这两种方法的工作; http://jsfiddle.net/JD67U/