Enter需要按两次才能触发,KnockoutJS带有knockout.validation.js

Enter needs to be pressed twice to trigger, KnockoutJS with knockout.validation.js

本文关键字:KnockoutJS 带有 knockout js validation 按两次 Enter      更新时间:2023-09-26

我正在构建一个表单页面,当我想实现一个"回车键"函数来同时触发验证和方法时,我陷入了困境。

以下是示例的JS Fiddle

正如您所知,您需要按两次Enter键才能触发该方法。我相信knockout.validation有自己的事件绑定,也许这就是的原因

<input type="text" data-bind="event: {'keypress': enterKey}, value: customer.telephone">
<input type="button" data-bind="click: sendCustomer" value="send">
enterKey = function (d, e) {
        if (e.keyCode == 13) {
            alert("enter has been pressed..");
            sendCustomer();
        }
        return true;
    }

按键和;keyup。此链接可能很有用。

所以我把按键换成了按键

<input type="text" data-bind="event: {'keyup': enterKey}, value: customer.telephone">

而且它似乎在起作用。希望这对你有帮助。

JSFIDDLE