我有一个适用于Keyup的自定义Binding,当用户手动输入数据时,valueAccessor()。call工作正常并输入所需的下一个函数。但是,当我们对相同的数据进行条形码编码并发送相同的返回键时,(我已经检查过两个方法发送的最后一个keyCode是13),valueAccessor没有进入下一个函数并退出。
我怀疑这可能与条形码数据输入字段的速度和随后的“输入”键有关。减慢条形码字符输入的速度会有帮助吗?如果是这样,你建议采用什么方法?
ko.bindingHandlers.enterKey = {
init: function (element, valueAccessor, allBindings, vm) {
ko.utils.registerEventHandler(element, "keyup", function (event)
{
if (event.keyCode === 13) {
ko.utils.triggerEvent(element, "change");
valueAccessor().call(vm, vm);
}
return true;
}
);
}
答案 0 :(得分:0)
感谢您的帮助。事实证明,VM中存在一个名不一致的变量。