我已经将我的 Knockout 绑定设置为有一个按键事件,因为我希望Enter在输入字段上进行检测。
如果我有以下情况:
data-bind="event: { keypress: KeyPress }"
我的视图模型有
this.KeyPress = function(data, event) {
console.log(event.keyCode);
}
然后 keyCode 按预期显示。
但是,我希望向函数传递一个附加参数KeyPress
,所以按照这里的示例,我现在有了
data-bind="event: { keypress: function (data, event) { KeyPress('myParam', data, event); return true; } }" />
我相应的功能现在变成了
this.KeyPress = function(p, data, event) {
console.log(event.keyCode);
}
现在,该keyCode
属性始终返回 0。我可以在event
对象内部看到charCode
为每个按键设置了该属性,但不是该keyCode
属性(该charCode
属性没有多大用处,因为所有不可打印的字符都是 0)。
我也可以看到该event
对象有一个originalEvent
属性,但是keyCode
这里的in是一样的,即0。
那么谁能告诉我如何让keyCode
属性通过函数文字传播?