我有一个适用于 Keyup 的自定义绑定,当用户手动输入数据时,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;
}
);
}