我试图在keypress事件绑定的处理函数中获取input元素的值
<input data-bind="textInput: searchInput, event: { keypress: filterList }" type="text" placeholder="Search..">
var ViewModel = function() {
self.searchInput = ko.observable("");
self.filterList = function(input) {
console.log(input);
return true;
}
};
不打印输入字段的值,而是打印ViewModel对象 如何在filterList处理函数中获取每个按键上的输入字段的值?
答案 0 :(得分:1)
由于您将input
存储到self.searchInput
并且它是observable
,因此您可以直接在filterList
处理程序中使用它 -
var ViewModel = function() {
var self = this;
self.searchInput = ko.observable("");
self.filterList = function() {
console.log(self.searchInput());
return true;
}
};
此外,我会说将keypress
事件更改为keyup
,因为它可以提供更准确的结果(至少在我的小提琴中)。
<input data-bind="textInput: searchInput, event: { 'keyup': filterList }" type="text" placeholder="Search..">