jquery表单验证插件

位置:首页 / 技术中心 / 杂项

杂项 Admin 2026-03-27 16:24:34 88

 jQuery 表单验证插件调用流程总结

1. HTML 表单元素定义

在 stepOrdinary.html#L171-172 中定义输入框:

<input type="text" autocomplete="off" name="nickname" placeholder="请输入姓名" id="nickname">
- name="nickname" :用于验证规则匹配
- id="nickname" :用于 jQuery 选择器定位
2. 引入验证插件
在 HTML 中引入必要的 jQuery 验证插件:
<script src="./memberLogin_files/jquery.validate.js"></script>
<script src="./memberLogin_files/additional-methods.js"></script>
<script src="./memberLogin_files/jquery.validate.messages_cn.js"></script>
3. 初始化验证
在 yuzhuce2.step1.js#L6 中调用初始化方法:
initPage: function() {
  var self = this;
  self.form = $('#mainForm');
  self.initValidateFormData(self);  // 初始化表单验证
}
4. 自定义验证方法
在 yuzhuce2.step1.js#L19-27 中添加自定义验证规则:
$.validator.addMethod('nickname', function(value, element) {
  var nicknameRegex = /^[\u4e00-\u9fa5a-zA-Z0-9]{3,}$/;
  if(value.indexOf('null') === -1 || value.indexOf('undefined') === -1) {
     return this.optional(element) || nicknameRegex.test(value);
  }else{
    return false;
  }
}, '昵称不能包含空格/特殊字符,且长度至少3个字符');
5. 定义验证规则对象
在 yuzhuce2.step1.js#L84-88 中定义验证规则:
rules['nickname'] = {
  required: true,    // 必填
  minlength: 3,      // 最小长度3
  nickname: true     // 使用自定义的nickname验证方法
};
这里解释你不懂的部分:

- rules['nickname'] :这里的 'nickname' 对应 HTML 中输入框的 name="nickname" 属性
- required: true :表示该字段必填
- minlength: 3 :表示最小长度为3个字符
- nickname: true :表示启用第4步中自定义的 nickname 验证方法
 6. 定义错误提示信息
在 yuzhuce2.step1.js#L43-47 中定义错误提示:
messages: {
  nickname: {
    required: '请输入姓名',
    minlength: '姓名至少3个字符',
    nickname: '请输入有效的姓名'
  }
}
7. 实时验证配置
在 yuzhuce2.step1.js#L69-77 中配置实时验证:
onkeyup: function(element) {
  $(element).valid();    // 键盘抬起时验证
},
onfocusout: function(element) {
  $(element).valid();    // 失去焦点时验证
},
onblur: function(element) {
  $(element).valid();    // 模糊时验证
}
8. 激活验证
最后调用 validate() 方法激活验证:
self.form.validate({
  rules: rules,
  messages: messages,
  onkeyup: ...,
  onfocusout: ...
});
核心要点
1. name 属性是关键 :验证规则通过 name 属性匹配表单元素
2. 规则对象结构 : rules['字段名'] = { 规则名: 值 }
3. 自定义方法 :通过 $.validator.addMethod() 添加自定义验证
4. 实时验证 :通过 onkeyup 、 onfocusout 等事件实现实时反馈
5. 错误提示 : messages 对象与 rules 对象结构对应
这样整个表单验证系统就能工作了,当用户输入时会实时验证并显示相应的错误提示。
18455111359 扫描二维码