
普通验证的例子:http://www.position-relative.net/creation/formValidator/
ajax验证的例子:http://www.position-relative.net/creation/formValidator/demoSubmit.html
点此下载感谢热心的小杰童鞋,这个中文版是由小杰童鞋童鞋翻译的,同时根据中国国情修改了部分验证规则。
这个插件支持大部分的浏览器,但由于有使用到了css3的阴影和圆角样式,所以在IE浏览器下无法看到圆角和阴影效果(万恶的IE)。
简单说明下使用教程:
引入jquery和插件js、css
- <link rel="stylesheet" href="css/validationEngine.jquery.css" type="text/css" media="screen" charset="utf-8" />
- <script src="js/jquery.js" type="text/javascript"></script>
- <script src="js/jquery.validationEngine-en.js" type="text/javascript"></script>
- <script src="js/jquery.validationEngine.js" type="text/javascript"></script>
jquery.validationEngine-en.js是语言文件,所有的提示都在这个文件找的到,可以很方便的转成其他语言,同时你也可以在这个文件内定制属于自己的验证规则。
初始化插件
- $(document).ready(function() {
- $("#formID").validationEngine()
- })
验证规则是写在表单元素的class属性内。比如下面:
- <input value="" class="validate[required,custom[noSpecialCaracters],length[0,20],ajax[ajaxUser]]" type="text" name="user" id="user" />
验证规则非常多样,基本上包含了所有的数据类型的验证。
所有的验证规则写在validate[]内,有多种验证,用逗号隔开,这里简要说明下常用的验证规则。
- required:值不可以为空
- length[0,100] :文字允许长度
- confirm[fieldID] :匹配其他的表单元素的值,fieldID就是其他表单元素的id,这个主要用于再次确认密码
- telephone :数据格式要求符合电话格式
- email : 数据格式要求符合email 格式
- onlyNumber :只允许输入数字
- noSpecialCaracters :不允许出现特殊字符
- onlyLetter : 只能是字母
- date :必须符合日期格式YYYY-MM-DD
你还可以在点击提交按钮后才触发验证。
- $("#formID").validationEngine({
- inlineValidation: false,
- success : false,
- failure : function() { callFailFunction() }
- })
默认的是在鼠标失去焦点后才开始验证,也就是绑定的是blur事件,那如何改变呢?看下面的配置。
- $("#formID").validationEngine({
- validationEventTriggers:"keyup blur", //will validate on keyup and blur
- success : false,
- failure : function() { callFailFunction() }
- })
validationEventTriggers属性就是修改绑定事件,上面是增加了个keyup,也就是键盘按键起来就触发验证。
修改提示层的位置
- $("#formID").validationEngine({
- promptPosition: "topRight", // OPENNING BOX POSITION, IMPLEMENTED: topLeft, topRight, bottomLeft, centerRight, bottomRight
- success : false,
- failure : function() {
- })
promptPosition就是控制位置,有5种模式:topLeft, topRight, bottomLeft, centerRight, bottomRight
ajax验证模式
- $("#formID").validationEngine({
- ajaxSubmit: true,
- ajaxSubmitFile: "ajaxSubmit.php",
- ajaxSubmitMessage: "Thank you, we received your inscription!",
- ajaxSubmitExtraData: "securityCode=38709238423&name=john",
- success : false,
- failure : function() {}
- })
这几个参数很好理解。
- ajaxSubmit: true, 提交表单使用ajax提交
- ajaxSubmitFile: “ajaxSubmit.php”, 后台脚本
- ajaxSubmitMessage 成功后显示的信息
- ajaxSubmitExtraData 参数
这里需要对后台脚本返回的数据进行下说明:
返回的数据格式是json。
出现一个错误,产生一个数组,如下:
- $arrayError[0][0] = "#email"; // FIELDID
- $arrayError[0][1] = "Your email do not match.. whatever it need to match"; // TEXT ERROR
- $arrayError[0][2] = "error"; // BOX COLOR

这个站很漂亮。
谢谢
不能下载了啊,,,,悲剧
下载已经修正,谢谢提醒。
非常感谢niuyugui0702@163.com朋友的提醒,下载链接已经修正了。
@明河共影, 额,你泄漏了别人的邮箱了,嘿嘿
……..总比泄露真名好…….
使用了custom[]之后好像提交的时候都检查了,那不相当于变成了required了吗,有好的方法解决吗
作者已经升级了,建议楼主更新下包包
http://www.position-absolute.com/news/validation-engine-1-7-1-compatibility-release-and-why/
感谢提醒!你不说我还真的不知道,晚上更新下,谢谢。
不好意思
可否請問用此表單驗證功能
有沒有辦法在所有欄位驗證通過後
取得一個返回的值呢?
我是想在驗證通過後再秀出使用者填的資料在一個彈出的新視窗中
預覽無誤後再送出表單
感謝
从理论上是可以的,但要求你监听插件的回调函数做一些处理。按照你的要求,你只是需要预览,是不需要返回值的。点击提交后,你只要判断验证通过后,先显示一个弹出层,然后在提交。这些步骤是需要你自己歇歇代码控制的。插件只管验证而已。
请问 我现在项目有多书签那种形式的表单,想把这个改成alert形式的提示 应该怎么修改 谢谢啊
我现在在用这个插件的时候遇见个问题。 还请楼主指导下,在from 里面有多个submit 时 怎么控制 哪些可以回发验证,那些不需要验证就回发, 我现在做的是添加删除修改查询在一个页面上,查询的时候不需要验证。很急。360525082@qq.com
请问一下噢,在输入控件的class属性上设置验证模式,那不是不能对其设置样式了?因为class属性被“占用”了?
请问,我如果是在提交按钮处不用submit提交,我是用button 在我的按钮处我写了一个onclick 事件,在我的脚本里面我先走了一会我自己的脚本 然后在怎么使用你的校验,况且我只做校验 不提交form 如何写
本人非常着急 联系QQ 995680838 希望有人能帮助一下
呵呵 我搞定了 没看见啊 呵呵
…..不好意思,周末出游了,没看到留言。
@忘情水, 怎么搞定的啊.能分享一下么?
判断jQuery(“#myform”).validationEngine(‘validate’),为true或者false 为true就是验证通过。可以提交。
动态添加行的 每增加一行 都必须要初始化一下验证,我的系统里面动态行添加了100行,结果提交的时候等待了10秒钟,才出现验证信息提示,很慢,大家的动态行添加的是怎么校验的啊。还有就是JavaAjax验证的我怎么用不了啊,请高手指点指点,谢谢!
请问 动态添加行的 每增加一行 都必须要初始化一下验证,我的系统里面动态行添加了100行,结果提交的时候等待了10秒钟,才出现验证信息提示,很慢,大家的动态行添加的是怎么校验的啊。还有就是JavaAjax验证的我怎么用不了啊,请高手指点指点,谢谢!
您好,下载不了啊。。。