jQuery在特定div中计算div,然后在添加新div时重置count

时间:2017-07-24 10:06:22

标签: javascript jquery

我使用.each来计算另一个div中的div,但是我有多个具有相同类的div,我想从0开始计算每个新的div包装。

对不起,这很难解释,所以这里有一个指向jsFiddle工作的链接:https://jsfiddle.net/1nds1put/

1。)点击"添加季节性价格过滤器"

2。)点击"添加价格规则",您会看到"价格规则#1" (工作正常)

3。)点击"添加价格规则"再次,你会看到它说"价格规则#2" (仍然工作正常)

4。)点击"添加季节性价格过滤器"再次

5.点击"添加价格规则"在新的季节性价格过滤器中,您会看到它"价格规则#3" (不工作,我希望它说"价格规则#1"因为它在不同的div中)

这是计算数字/计数器的函数:

function recacluclate() {

        $( ".price-rule-wrapper-outer").children('div').each(function(index) {
            $(this).find('.price-rule-number span').text(index + 1);
        });

        $( ".seasonal-filter-wrapper-outer").children('div').each(function(index) {
            $(this).find('.seasonal-filter-number span').text(index + 1);
        });

        $( ".seasonal-filter-wrapper-outer .price-rule-wrapper-outer").children('div').each(function(index) {
            $(this).find('.price-rule-number span').text(index + 1);
        });

        $( ".price-rule-wrapper-outer").children('div').each(function(index) {
            $(this).find('.standard-adult-weekday').attr('name', 'standard-adult-weekday-' + (index + 1));
            $(this).find('.standard-adult-weekend').attr('name', 'standard-adult-weekend-' + (index + 1));
            $(this).find('.standard-child-weekday').attr('name', 'standard-child-weekday-' + (index + 1));
            $(this).find('.standard-child-weekend').attr('name', 'standard-child-weekend-' + (index + 1));
        });

    }

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

替换

$( ".seasonal-filter-wrapper-outer .price-rule-wrapper-outer").children('div').each(function(index) {
    $(this).find('.price-rule-number span').text(index + 1);
});

$(".seasonal-filter-wrapper-outer .price-rule-wrapper-outer").each(function() {
  $(this).children('div').each(function(index) {
    $(this).find('.price-rule-number span').text(index + 1);
  });
})