在div中计算特定字符的Jquery数量

4

我有一段 PHP 代码可以生成一些 <a> 标签,最终输出的结果如下:

<div id='link1'>
<a style="font-size:10pt; color: #008056" href="somelink">Name</a>
<b>;</b>
</div>

我的问题是如何使用jQuery计算该div中的所有分号数量?


4
包括那些在“style”属性中的吗?另外,你为什么需要这个呢? - Rory McCrossan
2
我点赞了@RoryMcCrossan,因为我渴望听到这个问题的解释。 - dkasipovic
每个链接代表一个产品的作者名称。有些产品有多个作者,每个名字后面都会加上分号。我想要计算这些分号,如果只有一个分号,我想要将其删除。 - user986959
在这种情况下,计算 div 中 a 元素的数量将更可靠且更快。 - Rory McCrossan
1
从你上面的评论中可以看出,你可能需要使用 $('#link1').children('b:last-child').remove() - Pete
显示剩余2条评论
2个回答

5

如果想要包括style属性中的内容,可以尝试以下方法:

  alert($('#link1').html().split(";").length - 1);

要获取没有在属性中的元素:

  alert($('#link1').html().replace(/(<([^>]+)>)/ig,"").split(";").length - 1);

演示链接

更新:要在字符串“A”中找到一个分号“;”并将其移除:

$('#link1 a').each(function(){
 if($(this).html().split(";").length==2){
  $(this).html($(this).html().replace(";",""))
}});

Working Demo


5

我不知道你在做什么,但如果需要的话,你可以这样做:

$('#link1').html().match(/;/g).length

/;/g 是一个正则表达式,它将匹配所有的 ;


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接