jquery验证 - 输入掩码冲突

问题描述:

我有一个表单,使用jquery验证和表单验证提交和模糊(onfucusout)。我的一些字段有使用jquery mask插件的掩码。掩码会在字段(---)---/----中放置类似的内容。当用户点击此字段时,(---)---/----消失。我的问题是,虽然这个字段是黑色的,但它会抛出验证错误,认为用户输入了(---)---/----而不是将它留空。jquery验证 - 输入掩码冲突

我的第一个想法是延迟验证,以便它在(---)---/----消失之后验证。我的问题是如何设置验证延迟,以便在字符消失后评估字段?如果这不是正确的修复可以有人帮我解决这个问题。

同样,我认为这是因为验证在面具字符消失之前触发引起的。我需要它在掩盖的地方持有者消失后进行验证。谢谢你的帮助。

我解决这个问题的方式。在我的情况

输入掩码: “(999)999-9999”

为我的测试例如我做了以下内容:

(1)我做的第一件事是什么决定字符正在我的DOM中生成。 例如 在FireBug控制台中使用下面的代码。

$( '#MyPhoneNumberID')。KEYDOWN(函数(){ 的console.log($(本).VAL())

在我的情况是吐出以下(_) - ___

(2)围绕我所用的工作是更新我的正则表达式(用于手机),包括面具为正则表达式 例如部分“(_) - ___” OR正确输入电话号码是允许的。

使用正则表达式: “^:(1)(:\ S *(:(+) - ??????| |()\ S *)(\ d {3} | _ {3} | \ s {3})(:\ s *(?: - ?| |)?)\ S *)(\ d {3} | _ {3} | \ s {3} )(?:\ s *(?: - |。)?\ s *)?(\ d {4} | _ {4} | \ s {4})$“

Hope this help!