我目前的代码是:
<ul>
<li class="nav">
<-- uc tag with hyperlink that show/hides based on a code behind & user rights. --><br />
</li>
</ul>
<script type="text/javascript" >
$('li.nav:empty').hide();
</script>
线元素会根据用户权限自动填充到应用程序中。导航中有多种此类链接实例。
此解决方案适用于我正在处理的其他应用程序,但由于某些原因,我的当前应用程序无法正常工作。
上面的代码只是一个示例 - 不是直接复制和粘贴。 BR标签不存在于实际应用中,也不是填充文本。
答案 0 :(得分:1)
首先你需要从里面删除
..
将您的脚本包含在 DOM ready Handler
中<script type="text/javascript">
$(function () {
$('li.nav:empty').hide();
});
</script>
答案 1 :(得分:1)
如果要隐藏没有文字的li元素,可以使用:
$('li.nav').filter(function(){return $(this).text().trim().length==0}).hide();
答案 2 :(得分:0)
:empty
描述:选择所有没有子元素的元素(包括文本节点)。
我认为你的$('li.nav:empty')
不是空的,因为有一些文本节点。
你应该写一个过滤器。
$('li.nav').filter(function () { return $.trim($(this).text()); }).hide();