我能理解
<p>Destination country: <select data-bind="options: availableCountries"></select></p>
<script type="text/javascript">
var viewModel = {
availableCountries : ko.observableArray(['France', 'Germany', 'Spain']) // These are the initial options
};
ko.applyBindings(viewModel);
</script>
将创建一个select元素,如下所示:
<select data-bind="options: availableCountries">
<option value="France">France</option>
<option value="Germany">Germany</option>
<option value="Spain">Spain</option>
</select>
但是如果我希望它是这样的呢:
<select data-bind="options: availableCountries">
<option value="1">France</option>
<option value="2">Germany</option>
<option value="3">Spain</option>
</select>
我的代码是什么?
我知道我可以使用optionsText来填充选项,但是optionsValue似乎不适合我
干杯,丹妮尔
发布于 2012-05-02 21:43:06
您可能希望将数组['France', 'Germany', 'Spain']
映射到一个对value
和text
具有单独属性的结构。
例如,
[
{ value: 1, name: 'France' },
{ value: 2, name: 'Germany' },
{ value: 3, name: 'Spain' }
]
然后,您可以像这样绑定它:
<select data-bind="options: availableCountries, optionsText: 'name', optionsValue: 'value'"></select>
https://stackoverflow.com/questions/10411455
复制相似问题