使用jQuery .each()将“数字”与Alphabet进行对比

时间:2012-10-16 00:41:07

标签: javascript jquery

我用它来编号“number”类的div:

$("#parent .number").each(function(i){
    $(this).html((i+1) + ". ");
});

但是我如何使用类似的东西而不是“数字”作为a,b,c,d等?

5 个答案:

答案 0 :(得分:9)

使用string.fromCharCode

$("#parent .number").each(function(i){
    $(this).html(String.fromCharCode(97 + i) + ". ");
});

此外,如果您想使用大写字符,请使用65而不是97。

答案 1 :(得分:5)

您可以创建一个字母数组:

var alpha = ["a","b","c",....];

然后使用索引打印它们:

$("#parent .number").each(function(i){
    $(this).html(alpha[i] + ". ");
    });

您知道,您可以使用有序列表来执行此操作,使用html和css:

html:

<ol class="alpha">
   <li>text ...</li>
   <li>text ...</li>
   <li>text ...</li>
   <li>text ...</li>
</ol>

css:

ol.alpha li {
   list-style-type:lower-alpha;
}

答案 2 :(得分:1)

var index = 97;
$("#parent .number").each(function(i){
    $(this).html(String.fromCharCode(index++));
});

Live DEMO

答案 3 :(得分:1)

这个是否是用Javascript完成的? CSS计数器可以达到同样的效果:

http://jsfiddle.net/UZwqu/1/

#parent {
    counter-reset: my-counter;
}

#parent .number:before {
    content: counter(my-counter, lower-alpha);
    counter-increment: my-counter;
}​

更多细节:

http://css-tricks.com/numbering-in-style/

答案 4 :(得分:0)

var i=97;
$("#parent .number").each(function(){
    $(this).html(String.fromCharCode(i++) + ". ");
  });