检索循环外每个循环中设置的变量值

时间:2019-05-07 13:14:03

标签: jquery

我需要获取在jQuery的each循环中设置的变量的值。这是我到目前为止的内容:

$('#conservatory_size .eva_toggle').each(function(){
  if($(this).hasClass('active')){
     var conservatory_size_total = $(this).data('price');
  }
});
alert(conservatory_size_total);

该值在那里并且可以使用,因为如果我在each循环内调用警报,它将显示正确的价格。但是从循环中看,变量甚至没有警报。

有什么想法吗?

更新

如果我按照您所说的去做,那么IF语句就可以正常工作了,在循环之前声明变量是不可以的。

$('#conservatory_size .eva_toggle').each(function(){
            if($(this).hasClass('active')){
                var conservatory_size_total = $(this).data('price');
                alert('Has class.');
            }
        });
        alert(conservatory_size_total);

enter image description here

2 个答案:

答案 0 :(得分:2)

在循环外声明变量:

var conservatory_size_total = '';
$('#conservatory_size .eva_toggle').each(function(){...

答案 1 :(得分:0)

尝试在循环外声明var

var conservatory_size_total;
$('#conservatory_size .eva_toggle').each(function(){
  if($(this).hasClass('active')){
     conservatory_size_total = $(this).data('price');
  }
});
alert(conservatory_size_total);