问题描述
我正在使用敲除hasfocus事件进行电话号码验证,而从输入字段验证错误中移出焦点应该会弹出,但是只有当我第一次尝试第二次单击它时,才发生这种情况,但我没有尝试过调试在函数中添加一个断点,以便我发现错误消息已显示出来,但是发生了一些事情,并且错误消息在第一次单击时被删除了
有人可以帮忙吗?
widget.isShippingPhoneFocus.subscribe(function (newValue) { if (!newValue) { var phoneValid = widget.validatePhone(); if (!phoneValid) { widget.isPhoneValid(false); $('#CC-checkoutAddressBook-sphone-error').text(widget.phoneErrorMsg()); $('#CC-checkoutAddressBook-sphone-error').show(); } else { $('#CC-checkoutAddressBook-sphone-error').hide(); widget.isPhoneValid(true); } } });
<input type="tel" class="form-control" name="sPhone" id="CC-checkoutAddressBook-sphone" data-bind="validatableValue: phoneNumber, widgetLocaleText:{value:'phoneNumberText',attr:'placeholder'}, valueUpdate:'keyup', hasFocus: $parent.isShippingPhoneFocus">
1楼
mukhtar alam
0
2019-02-18 11:26:24
在开始时,在为小部件应用绑定时,请尝试为isShippingPhoneFocus赋予错误的值。 它可能会解决问题。