1

我想知道是否可以触发一个功能,该功能会提示输入文本中的实际文本。

例如

<input type="text" data-bind="value: searchText"/>

现在,如果您在输入框中写了一些东西,则应该调用一个函数,该函数会触发一个消息框,其中包含您在输入框中写入的值,而不会使输入框失去焦点

4

1 回答 1

2

我认为您正在寻找值绑定valueUpdate的选项:您可以在其中指定其他事件来更新您的 observable 而不是默认的更改事件:

<input type="text" data-bind="value: searchText, valueUpdate: 'afterkeydown'"/>

然后您订阅您的 searchText 更改

this.searchText.subscribe(function(newValue) {
   //Do something when the user types soemthing
});

但也许你需要油门扩展器来避免在每次击键时触发事件:

this.searchText = ko.observable('').extend({ throttle: 500 });
于 2013-02-26T12:36:14.593 回答