[英]Validation to check if the user has entered the correct format
我有一个动态网格,其中有一个数字字段,我在其中应用了掩码。 它还有一个加号按钮,意味着用户可以根据需要添加许多行。 屏蔽是这样应用的:
<input type='textbox' placeholder='00000-00-000' data-mask='00000-00-000'
当用户输入 10 位数字时应用此屏蔽,但它也允许用户输入 2 或 3 位数字。 为此,我尝试在保存时应用验证,以便检查输入的值是否与所需格式匹配。
到目前为止我所做的是:
value = $(this).find('td:eq(1)').find('input').val(); //saves the entered value in a variable value
myRegExp = new RegExp(/\d{5}-\d{2}-\d{3}/);
if (!myRegExp.test(value)) {
valid = false;
}
else
valid = true;
用户输入的值保存在名为 value 的变量中,然后我定义了我的正则表达式以将我的值与该表达式匹配,但不知何故,这个正则表达式不起作用。 这是定义正则表达式的正确方法吗? 我在这里想念什么? 我要求的格式是 00000-00-000。 任何帮助,将不胜感激。
您的逻辑是正确的,但您尚未定义终点,这就是它允许插入更多值的原因。
在您的正则表达式中,它仅检查 10 位数字是否按特定顺序
试试这个
myRegExp = new RegExp(/^\d{5}-\d{2}-\d{3}$/);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.