jquery每个函数以获取类值内容

jquery每个函数以获取类值内容,jquery,each,Jquery,Each,脚本 $("#activities").next().next().each(function(i) { }); html <div class="head" id="activities" >Activities</div> <div class="sub-head"> <span class="title">Activity</span> <span class="value">Min</span> <

脚本

$("#activities").next().next().each(function(i) { });
html

<div class="head" id="activities" >Activities</div>
<div class="sub-head"> <span class="title">Activity</span> <span class="value">Min</span> <span class="unit">Calories</span> </div>
<div class="rows"> <span class="title">bicycling</span> <span class="value">30</span> <span class="unit">174</span> </div>
<div class="rows"> <span class="title">fishing and hunting</span> <span class="value">30</span> <span class="unit">261</span> </div>
<div class="rows"> <span class="title">transportation</span> <span class="value">30</span> <span class="unit">261</span> </div>
<div id="activitiesData"></div>
活动
活动最低热量
骑自行车30 174
渔猎30 261
运输30 261

有人能帮我在jquery中使用each从这个div获取数据吗?

您可以直接选择
.rows
元素,而不是使用多个
next()
方法遍历DOM,请尝试以下操作:

var sum = 0;  
$(".rows .value").each(function(){
       var val = parseInt($(this).text(), 10)
       if (!isNaN(val)) {
            sum += val
       }          
})   

这应该可以做到:

var sum = 0;
$('#activities').nextAll('.rows').find('.value').each(function() {
    var n = parseInt($(this).text(), 10); 
    if (!isNaN(n)) sum += n; 
});

请在这里查看解决方案

$('#GetTitles').click(function(){
    $('div.rows .title').each(function(){
        alert($(this).text());
    });
});

要获取数组中的每个值,请执行以下操作:

var values = $(".value", ".rows").map(function(i, e) {
    return parseInt(e.innerHTML, 10);
})​;

获取值的组合和

var value = 0;
$.each($(".value", ".rows"), function(i,e) {
    value += parseInt(e.innerHTML, 10);
});

请说明您要提取的具体数据实际上我要提取30+30的和+30@SeethaRaman请标记接受的答案。value不是#活动的子项是ankit。value不是#活动的子项,因此我们可以使用.next()吗?@AnkitGautam是,当OP没有正确缩进HTML时,就会发生这种情况。现在已经修好了。谢谢大家的支持,伊茨工作得很好,干杯guys@Raminson是的,如果字段不是有效的数字,它会的。谢谢大家的支持,itz工作得很好,伙计们,干杯