Jquery -从1开始为每次迭代添加编号

hrysbysz  于 2023-01-25  发布在  jQuery
关注(0)|答案(4)|浏览(125)

我想把从1开始的数字加到循环中的每个元素上。
这是密码:

function(data, status){
   var cleanData = $.parseJSON(data);
   var i = 1;
   $.each(cleanData, function(key, value, i) {
      $( "#list" ).append(
        "<div class='large-12 columns'><div class='large-1 columns'>" + (++i) + "</div><div class='large-10 columns'><p> " + value.title + "</p></div><div class='large-1 columns'>" + value.count +"</div></div>" );
        });
    }

我也用(i+1)试过,但后来我得到了NaN
所以,最终的结果会是这样的:

bqjvbblv

bqjvbblv1#

所以我不太确定是哪里出了问题,但是可以试着把i从函数参数中去掉,因为它在作用域中。也可以使用i++(先读后加)或者设置i = 0。否则你将从2开始。

function(data, status){
   var cleanData = $.parseJSON(data);
   var i = 0;
   $.each(cleanData, function(key, value) {
      $( "#list" ).append(
        "<div class='large-12 columns'><div class='large-1 columns'>" + (i++) + "</div><div class='large-10 columns'><p> " + value.title + "</p></div><div class='large-1 columns'>" + value.count +"</div></div>" );
    });
}
dba5bblo

dba5bblo2#

如果您的cleanData是一个列表,请按如下方式使用$.each()

$.each(cleanData, function(key, value) {
    ...
    ...ns'>" + (key + 1) + "</di...
sbtkgmzw

sbtkgmzw3#

function(data, status){
  var cleanData = $.parseJSON(data);
  var i = 1;
  $.each(cleanData, function(key, value, i) {
  $( "#list" ).append("<div class='large-12 columns'>
  <div class='large-1 columns'>" + i + "</div>
  <div class='large-10 columns'>
  <p> " + value.title + "</p>
  </div>
  <div class='large-1 columns'>" + value.count +"</div>
  </div>" );
    i = i + 1;
    });
   }
xcitsw88

xcitsw884#

function(data, status){
   var cleanData = $.parseJSON(data);
    for(var i=0 ; i < cleanData.length ; i++){
      $( "#list" ).append(
        "<div class='large-12 columns'><div class='large-1 columns'>" + (i+1) + "</div><div class='large-10 columns'><p> " + data[i]['title'] + "</p></div><div class='large-1 columns'>" + data[i]['count'] +"</div></div>" );
      }
    }

相关问题