2
我正在使用敲除来创建选择列表。每个选择项都是一个包含一对变量的对象。当选择一个项目时,我想在span
中显示所选对象的另一个变量。敲除显示选择的数据
该选择有效,但没有数据显示在包含data1:
文本的范围中。
任何想法?
小提琴这里:http://jsfiddle.net/e24zoyp6/
代码: JS
var _ViewModel = {};
$(document).ready(function() {
setupView();
});
function setupView() {
var Month = function (longName, shortName, value) {
this.ShortName = shortName;
this.MonthName = longName;
this.MonthNumber = value;
};
_ViewModel = {
// These are the initial options
monthSelection: ko.observableArray([
new Month("January", "Jan", 1),
new Month("February", "Feb", 2),
new Month("March", "Mar", 3)
]),
SelectedMonth: ko.observable()
};
ko.applyBindings(_ViewModel);
}
的Html
<select data-bind="
options: monthSelection,
optionsText: 'MonthName',
optionsValue: 'MonthNumber',
value: SelectedMonth,
optionsCaption: 'Which Month?'">
</select>
<div data-bind="visible: SelectedMonth"> data1:
<span data-bind="text: SelectedMonth() ? SelectedMonth().ShortName : 'unknown'"></span>
</div>
啊,谢谢。刚刚开始与KO。还不习惯所有的“魔术”。 – JensB
当你在html代码中添加'value =“”'到'option'时,当你不指定'value'的时候也会感到困惑。 – JensB