【问题标题】:How to get letter from each list item如何从每个列表项中获取字母
【发布时间】:2013-04-13 15:32:52
【问题描述】:
我有一个这样的 HTML:
<ol style="list-style: lower-alpha">
<li>First Line</li>
<li>Second Line</li>
<li>Third Line</li>
</ol>
这将导致:
a. First Line
b. Second Line
c. Third Line
点击First Line时如何获得a,点击Second Line时b............?
【问题讨论】:
标签:
javascript
jquery
jquery-selectors
html-lists
【解决方案1】:
在这种情况下,您可以使用javascript方法fromCharCode:
$('li').each(function(i) {
$(this).click(function() {
var letter = String.fromCharCode(97 + i);
});
});
97 是字母a 的字符码,循环会自动增加并给你下一个字母。
Working Demo
【解决方案2】:
试试this(DEMO),
概念:
使用Index() 获取被点击的li element 的index。
看,97 是 ascii code 的字符 'a'。假设你点击了first li,index() 将返回zero。所以 (97+0) = 97 = 'a'。像这样它会显示所有其他元素的结果。
$(document).ready(function(){
$("ol li").click(function(){
alert(String.fromCharCode(97 + $(this).index()));
});
});
【解决方案3】:
$('li').each(function(i) {
$(this).click(function() {
var letter = String.fromCharCode(95 + i);
});
});