formvalidator验证插件中有关ajax验证问题


Posted in Javascript onJanuary 04, 2013

jquery formvalidator插件是不错的国产验证插件了,做点普通的校验也是很方便的,但最近遇到个问题,发现如果表单整个表单是AJAX提交时,就不能按传统的做法了,比如:

$ajax.post("...............") 
$.formValidator.initConfig({formID:"applyForm",onError:function(msg){alert(msg)}}); 
$("#reason").formValidator().inputValidator({min:1,onErrorMin:'请输入申请内容及原因'});

很遗憾,单这样是达不到AJAX FORM提交并同时用formvalidator校验的效果的。如果要同时使用formvalidator和ajax提交一起的话,首先看到的是formvalidtor手册中关于ajaxform的用法
$.formValidator.initConfig({theme:"Default",submitOnce:true,formID:"form1",ajaxForm:{ 
dataType : "html", 
buttons:$("#button"), 
url: "http://www.51gh.net/chkuser.aspx?act=ok" 
}, 
onError:function(msg,obj,errorlist){ 
$("#errorlist").empty(); 
$.map(errorlist,function(msg){ 
$("#errorlist").append("[*]" + msg + " 
") 
}); 
alert(msg); 
}, 
submitAfterAjaxPrompt : '有数据正在异步验证,请稍等...' 
});

看了下,这个方法看上去是可以的,但实际上,居然对中文支持不好,我的是
struts2,spring 3,tomcat也是用utf-8,sturts2等全部用UTF-8编码了,但居然还是说当取的
struts2的中文值的时候,说:
org.apache.tomcat.util.http.Parameters processParameters
警告: Parameters: Character decoding failed. Parameter skipped.
java.io.CharConversionException: isHexDigit.
解决方式见
http://www.iteye.com/problems/7099
但这个问题很奇怪,而且感觉用formvalidtor本身的方法太麻烦,所以就找了另外的方法,果然好用,那就是使用
if ($.formValidator.pageIsValid('1')==true) 
{ 
$.post("xxxxxxxxxxxxxxxxx") 
}

其他校验规则照样写,如果页面只有一个表单,则默认为1,这里的pageIsValid,是校验这个组的控件所有都通过校验了,就继续做某事,你看,这样就简单多了
Javascript 相关文章推荐
用jQuery扩展自写的 UI导航
Jan 13 Javascript
JavaScript 的继承
Oct 01 Javascript
document.documentElement和document.body区别介绍
Sep 16 Javascript
JAVASCRIPT模式窗口中下载文件无法接收iframe的流
Oct 11 Javascript
jQuery中hasClass()方法用法实例
Jan 06 Javascript
jquery通过ajax加载一段文本内容的方法
Jan 15 Javascript
学习JavaScript事件流和事件处理程序
Jan 25 Javascript
Vue.js实现模拟微信朋友圈开发demo
Apr 20 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
May 03 Javascript
浅谈vue项目如何打包扔向服务器
May 08 Javascript
详解js模板引擎art template数组渲染的方法
Oct 09 Javascript
Next.js实现react服务器端渲染的方法示例
Jan 06 Javascript
使用jquery mobile做幻灯播放效果实现步骤
Jan 04 #Javascript
jquery 插件开发 extjs中的extend用法小结
Jan 04 #Javascript
使用jquery读取html5 localstorage的值的方法
Jan 04 #Javascript
表单的焦点顺序tabindex和对应enter键提交
Jan 04 #Javascript
屏蔽网页右键复制和ctrl+c复制的js代码
Jan 04 #Javascript
js 获取坐标 通过JS得到当前焦点(鼠标)的坐标属性
Jan 04 #Javascript
html a标签-超链接中confirm方法使用介绍
Jan 04 #Javascript
You might like
山进SANGEAN ATS-909X电路分析
2021/03/02 无线电
提升PHP执行速度全攻略(上)
2006/10/09 PHP
如何将数据从文本导入到mysql
2006/10/09 PHP
php保存二进制原始数据为图片的程序代码
2014/10/14 PHP
php中file_get_contents与curl性能比较分析
2014/11/08 PHP
PHP配置把错误日志以邮件方式发送方法(Windows系统)
2015/06/23 PHP
PHP微信API接口类
2016/08/22 PHP
php并发加锁示例
2016/10/17 PHP
PHP快速推送微信模板消息
2017/04/14 PHP
Riot.js 快速的JavaScript单元测试框架
2009/11/09 Javascript
css值转换成数值请抛弃parseInt
2011/10/24 Javascript
js 获取和设置css3 属性值的实现方法
2013/05/06 Javascript
js 一个关于图片onload加载的事
2013/11/10 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
JavaScript函数参数的传递方式详解
2017/03/06 Javascript
LayUi数据表格自定义赋值方式
2019/10/26 Javascript
vue项目中使用eslint+prettier规范与检查代码的方法
2020/01/16 Javascript
如何在现代JavaScript中编写异步任务
2021/01/31 Javascript
Python读取mp3中ID3信息的方法
2015/03/05 Python
python检查字符串是否是正确ISBN的方法
2015/07/11 Python
Python使用爬虫猜密码
2016/02/19 Python
Python实现读取及写入csv文件的方法示例
2018/01/12 Python
使用python绘制3维正态分布图的方法
2018/12/29 Python
Python实现的矩阵转置与矩阵相乘运算示例
2019/03/26 Python
Python自动化完成tb喵币任务的操作方法
2019/10/30 Python
Python2与Python3的区别详解
2020/02/09 Python
Pytorch数据拼接与拆分操作实现图解
2020/04/30 Python
HTML5 标准将把互联网视频扔回到黑暗时代
2010/02/10 HTML / CSS
使用html5 canvas绘制圆环动效
2019/06/03 HTML / CSS
英国创新设计文具、卡片和礼品包装网站:Paperchase
2018/07/14 全球购物
公司业务主管岗位职责
2013/12/07 职场文书
护士自荐信范文(2016推荐篇)
2016/01/28 职场文书
Python 高级库15 个让新手爱不释手(推荐)
2021/05/15 Python
手把手教你从零开始react+antd搭建项目
2021/06/03 Javascript
vue组件冲突之引用另一个组件出现组件不显示的问题
2022/04/13 Vue.js