我有一个 input
元素,每当 searchQuery
发生变化时,我想调用我的函数 searchQueryChanged
:
<input placeholder="Search…" type="text" name="q" data-bind="value: searchQuery, event: {change:searchQueryChanged}" autocomplete="off" />
在我的 View 模型中,这是 searchQuery
和 searchQueryChanged
:
searchQuery = ko.observable('');
searchQueryChanged = function() {
....do some stuff....
},
但是,当我在 input
中键入内容时,我的函数不会被调用。有什么想法吗?
最佳答案
您说当您在文本框中键入内容时不会调用任何内容。我相信,对于更改事件,您必须将焦点从文本框移开,才能触发更改并调用您的函数。如果您打算在文本框中键入内容时调用 searchQueryChanged 函数,则可以尝试此操作,它将在每次按键后调用 searchQueryChanged ---
<input placeholder="Search…" type="text" name="q" data-bind="value: searchQuery, valueUpdate: 'keyup', event: { keyup: searchQueryChanged}" autocomplete="off" />
关于javascript - 如何获取输入以在更改时调用 KO 绑定(bind)函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22102867/