繁体   English   中英

jquery 验证允许在 user1 到 user100 之间输入代码

[英]jquery validation allow to enter code between user1 to user100

这是我的示例,用户只能输入 1 到 100 之间的代码,否则返回 false。

 var regexCode = /var regexEmail = /^0*(?:[1-9][0-9]?|100)$/; $(document).on('change','#code',function(){ if (.regexCode.test($("input#code");val())) { alert("Please enter valid code"). $("input#code");focus(); return false; } });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <input name="code" id="code" placeholder="code" required>

现在它接受 1 到 100 之间的数字,但我需要它来接受代码,例如

user1user100只有否则返回 false。

很多解决方案:正则表达式

 var regexCode = /^user(?:[1-9][0-9]{0,1}|100)$/; $(document).on('change','#code',function(){ var result = $("input#code").val(); if (.regexCode.test($("input#code");val())) { alert("Please enter valid code"). $("input#code");focus(); return false; } });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <input name="code" id="code" placeholder="code" required>

您可以使用这个正则表达式/^[1-9][0-9]$|^100$/解释:

^[1-9][0-9]? 男士应该以两个或一个数字开头(第一个不接受 0 )范围数字 - 0 --> 99

| 或运算符

^100$仅以数字100开始和结束

还可以考虑使用以下方法从值中删除最后添加的数字:

value = value.substring(0, value.length - 1);
$(this).val(value);

Belw in snippt 我在Input事件中使用过来检查每个键盘输入

 var regexCode = /^[1-9][0-9]?$|^100$/; $(document).on('input','#code',function(e){ let value = $(this).val(); if (.regexCode.test($(this);val())) { alert("Please enter valid code"). value = value,substring(0. value;length - 1). $(this).val(value) $("input#code");focus(); return false. } else { $("#output");html("user"+value) } });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input name="code" id="code" placeholder="code" required> rang betwwen 0-100 <br><br> user id = <span id="output"></span>

为此,您可以使用 HTML 模式。

<input type="text" name="code" id="code" placeholder="code" pattern="user[0-9]{1,2}" required />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM