jquery - 仅使用 Jquery 验证的字母
问题描述
我尝试了文章一、 二、三的所有解决方案, 但在我的 示例项目中,我仍然可以在名字字段中输入数字或规范字符。
我尝试过的六件事:
$.validator.setDefaults({ submitHandler: function(form) { form.submit(); } });
jQuery.validator.addMethod("regex", function(value, element, param) { return value.match(new RegExp("^" + param + "$")); });
var ALPHA_REGEX = "[a-zA-Z]*";
jQuery.validator.addMethod("accept", function(value, element, param) {
return value.match(new RegExp("." + param + "$"));
});
function isValid(value)
{
var fieldNum = /^[a-z]+$/i;
if ((value.match(fieldNum))) {
return true;
}
else
{
return false;
}
}
$(document).ready(function() {
$('#contact_form').bootstrapValidator({
fields: {
first_name:
{
validators: {
field: { accept: "[a-zA-Z]+" },
regex: ALPHA_REGEX,
lettersonly:true,
required: true,
pattern: "^[a-zA-Z_]*$",
stringLength: {
min: 2,
},
notEmpty: {
message: 'Please supply your first name',
callback: function(value, validator, $field) {
if (!isValid(value)) {
return {
valid: false,
};
}
else
{
return {
valid: true,
};
}
}
},
我确定我错过了一些简单的东西,或者可能使用了稍微过时的 jQuery 库?编辑:我实际上只是尝试使用其他版本的库但没有成功。
解决方案
我建议你在一些“正则表达式匹配器”上尝试你的正则表达式。
拥有正确的正则表达式后,请确保将其传递给您的函数,而不是另一个。
推荐阅读
- android - 使用 ADB 命令获取 SMS 发送报告
- php - 服务器如何知道点击了哪个按钮
- javascript - 每次我调用关闭方法调用都会增加
- docker - Docker 服务无法在 CentOS 7 上启动
- flutter - Listview 不使用 TextField 动态更新
- string - 如何从只接受小数的字符串格式漏洞中获取地址?
- apache-poi - 我正在尝试在 XWPFDocument 和合并单元格的帮助下创建以下标题
- python - 如何使用Bottle Python作为字典从表单中的所有标签中获取所有名称?
- php - 如何在(My)SQL 中正确连接两个表?
- firebase - 如何在 Firestore 查询中组合相同键的总和:值对