【发布时间】:2018-04-07 22:33:05
【问题描述】:
我的视图模型中有一个 ko.observable,它附加到输入。当用户更改该输入的值(每个字符)时,我会运行 AJAX 调用,该调用会从后端下载建议。
当用户选择一项建议时,我想用所选值填充输入,但不发送 AJAX 调用。但是设置 observable 的值仍然会触发附加到 textInput 绑定的事件和调用函数。
如何在不触发 textInput 的情况下设置 observable 的值?
示例代码:
var name = ko.observable();
name.subscribe(nameChanged);
var nameChanged = function() {
someService.post(name(), success, failure);
}
var someAction = function() {
name("Test"); // I don't want to trigger AJAX call here
}
<input type="text" data-bind="textInput: name" />
【问题讨论】:
标签: javascript knockout.js observable