2012-10-06 42 views
1

我想用$指數KnockoutJS顯示字母代替numbers.eg,

A.物品1
B. ITEM2
C.項目3

我該怎麼做?

+2

你的問題還不是很清楚...你可以添加一些更多的細節,也許一些代碼,你已經擁有? – nemesv

回答

2

如果符合您的需求,您可以使用ollist-style-typeupper-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);​ 

例子:http://jsfiddle.net/andrewwhitaker/CCNtR/1/

1

在這個小提琴看看:http://jsfiddle.net/jearles/RhmTb/19/

的關鍵是寫一個視圖模型方法索引轉換爲信。

<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);