我需要为我的名字字段设置一个jquery验证,它允许用户只输入字母和数字组合的字母数字字符,但不需要输入数字。
答案 0 :(得分:1)
使用正则表达式。我使用https://jqueryvalidation.org/验证插件,以防你使用相同的插件,这里你有一个简单的自定义方法(很确定我是从stackoverflow.com/a/5732255/5437621得到的)... < / p>
$.validator.addMethod("alphanumeric", function(value,element) {
return this.optional(element) || /^[A-Za-z0-9]+$/.test(value);
}, "This field can only have letters and numbers.");
...但无论如何,这对你来说重要的是......
/^[A-Za-z0-9]+$/.test(yourInputValue);
...这将告诉您该值是否只包含字母和数字。
重要提示:我一直在使用这个字母数字函数,并直接从我的一个应用程序中粘贴它,但作为@mrid注释,我可能从中得到它(stackoverflow.com/a/ 5732255/5437621)或另一个答案(老实说,我不记得它但可能就是这样)。对不起,我不想接受其他人的工作。
我希望它有所帮助
答案 1 :(得分:0)
此解决方案使用https://jqueryvalidation.org/:
jQuery.validator.addMethod("alphanumeric", function(value, element) {
return this.optional(element) || /^[a-zA-Z0-9]+$/.test(value);
});
答案 2 :(得分:0)
$("#inp").keyup(function(e) {
var str = $.trim($(this).val());
if (str != "") {
var regx = /^[A-Za-z0-9]+$/;
if (!regx.test(str)) {
$("#error").html("alphanumeric only");
} else {
if (isNaN(str))
$("#error").html('');
else
$("#error").html("alphanumeric only");
}
} else {
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="inp" type="text">
<span id="error"></span>