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

我正在尝试使用 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>

对此有什么想法吗?



扬帆大鱼
浏览 203回答 4
4回答

幕布斯7119047

使用text如下方法:console.log($('#accordionItem&nbsp;li&nbsp;span').text());

繁星coding

据我了解,您想要的文本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>

一只萌萌小番薯

不需要 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>

Helenr

您似乎在选择<span>jQuery 选择器上的标签。虽然我建议使用 text 方法来实现你正在寻找的东西。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript