我想在KnockoutJS中使用$ index来显示字母而不是数字.g,
一个。物品1
B.项目2
C. item3
我该怎么做?
答案 0 :(得分:2)
如果符合您的需要,您可以使用ol
list-style-type
upper-alpha
来执行此操作。例如:
<强> HTML:强>
<ol data-bind="foreach: items" class="alpha">
<li data-bind="text: $data"></li>
</ol>
<强> CSS:强>
.alpha {
list-style-type: upper-alpha;
}
<强> JavaScript的:强>
function ViewModel() {
this.items = ko.observableArray([
"Apples",
"Oranges",
"Bananas"
]);
}
var model = new ViewModel();
ko.applyBindings(model);
答案 1 :(得分:1)
看看这个小提琴:http://jsfiddle.net/jearles/RhmTb/19/
关键是编写一个View Model方法将index转换为letter。
<div data-bind="foreach: names">
<div>
<span data-bind="text: $root.indexLetter($index())"></span>.
<span data-bind="text: $data"></span>
</div>
</div>
-
var viewModel = {
names : ['one', 'two', 'three', 'four', 'five', 'six'],
indexLetter : function(index) {
return String.fromCharCode(65 + index);
}
}
ko.applyBindings(viewModel);