我似乎做错了什么,但无法弄清楚!我这里有一个小提琴:KnockoutJS observable未在屏幕上更新
https://jsfiddle.net/L69jk5yL/
我最初被设定为11的值。当我选择下拉的东西,值被更新为12可观察到的_index,因为我可以在看淘汰赛模式,但屏幕上的值不会更新。
function viewModel() {
var self = this;
self._index = ko.observable("11");
self.selectResponse = function (item) {
alert('current ko value: ' + self._index());
self._index = "12";
alert('new ko value: ' + self._index);
}
}
ko.applyBindings(new viewModel());
<p>index: <strong data-bind="text: _index"></strong></p>
<select name="dateSelected" id="dateSelected" data-bind="event: { change: $root.selectResponse }">
<option value="">Select something...</option>
<option value="a">a</option>
</select>
您必须通过调用值来设置它:'self._index(“12”)'。你有没有完成教程或阅读文档? – user3297291