Javascript 删除每个列表中的最后一个逗号分隔符
我有一系列无序列表,它们被包装在另一个无序列表中。任务是用逗号分隔各个li标记,并省略每个列表的最后一个li标记 我可以在一个单独的列表级别上进行测试,即当只使用一个列表进行测试时,我能够从最后一个元素中删除最后一个逗号。但是当我尝试在中应用JavaScript时,会影响包装ul的最后一个li元素 这是我的密码:Javascript 删除每个列表中的最后一个逗号分隔符,javascript,jquery,separator,Javascript,Jquery,Separator,我有一系列无序列表,它们被包装在另一个无序列表中。任务是用逗号分隔各个li标记,并省略每个列表的最后一个li标记 我可以在一个单独的列表级别上进行测试,即当只使用一个列表进行测试时,我能够从最后一个元素中删除最后一个逗号。但是当我尝试在中应用JavaScript时,会影响包装ul的最后一个li元素 这是我的密码: <script type="text/javascript"> $(document).ready(function () {
<script type="text/javascript">
$(document).ready(function () {
$('.tagsList li span').each(function () {
$(this).append(',');
});
var lTag = $('.tagsList li:last span').text().replace(',','');
$('.tagsList li:last span').text(lTag);
});
</script>
<ul class="postsList">
<li>
<ul class="tagsList">
<li><span>tag1</span></li>
<li><span>tag2</span></li>
</ul>
</li>
<li>
<ul class="tagsList">
<li><span>tag1</span></li>
<li><span>tag2</span></li>
</ul>
</li>
</ul>
$(文档).ready(函数(){
$('.tagsList li span')。每个(函数(){
$(this.append(',');
});
var lTag=$('.tagsList li:last span').text().replace(',','');
$('.tagsList li:last span').text(lTag);
});
-
-
您应该使用稍加修改的选择器
$('.tagsList li:not(:last-child) span').each(function () {
$(this).append(',');
});
这直接针对li
中的所有span
元素,每个列表的最后一个li
除外
demo甚至CSS也足够了:
.tagsList>li+li:before{content:,“}
关于如何将注释添加到除最后一个孩子之外的所有孩子的想法?@chris,它正在添加到除最后一个孩子之外的所有孩子的注释中。。如果要添加到所有li
中的最后一个li
,请将:最后一个子项
更改为:最后一个