为了账号安全,请及时绑定邮箱和手机立即绑定

使用 jquery 获取 <li> 文本编号

使用 jquery 获取 <li> 文本编号

扬帆大鱼 2023-05-19 14:30:40
我正在尝试使用 js 获取 li 标签文本值,但我没有获得预期的输出,即(“Pens”)。我添加了一个代码片段。注意 -我无法更改 html。console.log(jQuery('#accordionItem li span').html());<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><div id="accordionItem" class="filter_middle-stage2-list_wrapper">  <li style="font-weight: bold;">Pens<span>(1200)</span></li></div>对此有什么想法吗?
查看完整描述

4 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

使用text如下方法:

console.log($('#accordionItem li span').text());


查看完整回答
反对 回复 2023-05-19
?
繁星coding

TA贡献1797条经验 获得超4个赞

据我了解,您想要的文本li没有 的文本span。所以你可以像这样使用replace函数来做到这一点:


console.log($('#accordionItem li').text().replace($('#accordionItem li span').text(), ''));

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<div id="accordionItem" class="filter_middle-stage2-list_wrapper">

  <li style="font-weight: bold;">Pens<span>(1200)</span></li>

</div>

如果你想要一个更通用的解决方案,它只会让你得到没有它的任何孩子的文本,li那将是一个更好的解决方案:


console.log($('#accordionItem li').contents().get(0).nodeValue);

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<div id="accordionItem" class="filter_middle-stage2-list_wrapper">

  <li style="font-weight: bold;">Pens<span>(1200)</span></li>

</div>


查看完整回答
反对 回复 2023-05-19
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

不需要 jQuery。 由于您有一个带有 ID 的元素,您可以直接访问它,并获取节点的文本并简单地删除任何非数字字符,您将得到您想要的数字值。

这种方法的好处是与 DOM 结构无关——它总是适用于该元素(具有该 ID),但可以应用于任何元素,<li>无论它是否有<span>子元素(或任何其他子元素)

console.log( 

  accordionItem.children[0].firstChild.textContent

)

<div id="accordionItem" class="filter_middle-stage2-list_wrapper">

  <li style="font-weight: bold;">Pens<span>(1200)</span></li>

</div>


查看完整回答
反对 回复 2023-05-19
?
Helenr

TA贡献1780条经验 获得超3个赞

您似乎在选择<span>jQuery 选择器上的标签。虽然我建议使用 text 方法来实现你正在寻找的东西。



查看完整回答
反对 回复 2023-05-19
  • 4 回答
  • 0 关注
  • 157 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信