想要在jquery中获取特定跨度的所有值

时间:2012-02-15 09:05:57

标签: jquery html

我的页面中有几个跨度,我希望得到它们中的每一个并在我的javascript控制台中显示每个跨度的值。例如。

这是我的代码示例:

<div id="les-articles-du-panier">
<span id="mon-panier-qte-1">36</span>
<span id="mon-panier-qte-3">26</span>
<span id="mon-panier-qte-4">8</span>
<span id="mon-panier-qte-5">12</span>
</div>

对于每个mon-panier-qte-我想做一个console.log(titi);

THX!

4 个答案:

答案 0 :(得分:2)

  

对于每个 mon-panier-qte - 我想做一个console.log(titi);

像这样:

$('#les-articles-du-panier span[id^="mon-panier-qte"]').each(function(){
   console.log($(this).text()); // or whatever
});

如果跨度始终显示在主div的正下方,则可以立即使用childern selector >

$('#les-articles-du-panier > span[id^="mon-panier-qte"]').each(function(){
   console.log($(this).text()); // or whatever
});

如果#les-articles-du-panier内的所有范围都只是以mon-panier-qte开头的ID,则可以跳过:

$('#les-articles-du-panier span').each(function(){
   console.log($(this).text()); // or whatever
});

答案 1 :(得分:1)

span元素没有值,但假设您的文字内容是:如果您只想要les-articles-du-panier中的内容:

$("#les-articles-du-panier > span").each(function() {
    console.log($(this).text());
});

选择元素,然后用each循环遍历它们。

选择器将仅匹配元素的直接子元素的span元素,ID为“les-articles-du-panier”。如果您想要所有后代(包括儿童的孩子等),请忽略>并使用$("#les-articles-du-panier span")...

如果您真的只想选择“mon-panier-qte- *”元素,则可以改为使用attribute starts with选择器:

$('span[id^="mon-panier-qte-"]').each(function() {
    console.log($(this).text());
});

或者您甚至可以将它们组合起来,以匹配“mon-panier-qte- *”元素,这些元素是“les-articles-du-panier”的直接孩子:

$('#les-articles-du-panier > span[id^="mon-panier-qte-"]').each(function() {
    console.log($(this).text());
});

...或后代(只是放弃>):

$('#les-articles-du-panier span[id^="mon-panier-qte-"]').each(function() {
    console.log($(this).text());
});

你明白了。值得阅读选择器herehere

答案 2 :(得分:0)

$('span[id^="mon-panier-qte"]').each(function(){
    console.log($(this).text());
});

这将记录HTML页面中每个范围的所有“值”。您必须知道跨度没有值,它只能包含文本。你使用方法.text()得到的但是要注意,如果你的span中有一些html代码.text()会删除每个html内容,只返回纯文本。另外,您可以指定跨越哪个类应包含等等。为此,看看选择器; - )

查看jQuery的.each()文档。有人解释了.each()的作用以及它的用处:

答案 3 :(得分:-1)

jQuery("#les-articles-du-panier").children().each(function() {
      console.log($(this).text());          
});