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 相关文章推荐
一些mootools的学习资源
Feb 07 Javascript
jQuery中siblings()方法用法实例
Jan 08 Javascript
jQuery自定义滚动条完整实例
Jan 08 Javascript
JavaScript必知必会(六) delete in instanceof
Jun 08 Javascript
JavaScript的this关键字的理解
Jun 18 Javascript
web前端开发中常见的多列布局解决方案整理(一定要看)
Oct 15 Javascript
JS实现的数组去除重复数据算法小结
Nov 17 Javascript
JavaScript设计模式之模板方法模式原理与用法示例
Aug 07 Javascript
详解关于Vue版本不匹配问题(Vue packages version mismatch)
Sep 17 Javascript
Vue渲染过程浅析
Mar 14 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
Apr 04 Javascript
angular 实现同步验证器跨字段验证的方法
Apr 11 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
PHP针对多用户实现更换头像功能
2016/09/04 PHP
使用Javascript和DOM Interfaces来处理HTML
2006/10/09 Javascript
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/01/13 Javascript
FormValid0.5版本发布,带ajax自定义验证例子
2007/08/17 Javascript
JavaScript修改css样式style
2008/04/15 Javascript
js获取图片长和宽度的代码
2009/11/24 Javascript
document.getElementById方法在Firefox与IE中的区别
2010/05/18 Javascript
JS弹出窗口代码大全(详细整理)
2012/12/21 Javascript
js判断60秒以及倒计时示例代码
2014/01/24 Javascript
jQuery is()函数用法3例
2014/05/06 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
浅谈js-FCC算法Friendly Date Ranges(详解)
2017/04/10 Javascript
使用JavaScript实现alert的实例代码
2017/07/06 Javascript
BootStrap 标题设置跨行无效的解决方法
2017/10/25 Javascript
微信小程序使用map组件实现解析经纬度功能示例
2019/01/22 Javascript
基于ts的动态接口数据配置的详解
2019/12/18 Javascript
nuxt+axios实现打包后动态修改请求地址的方法
2020/04/22 Javascript
Python运算符重载用法实例分析
2015/06/01 Python
python实现在windows服务中新建进程的方法
2015/06/30 Python
Python基础之条件控制操作示例【if语句】
2019/03/23 Python
python实现自动清理重复文件
2020/08/24 Python
python excel多行合并的方法
2020/12/09 Python
html5声频audio和视频video等新特性详细说明
2012/12/26 HTML / CSS
详解html5页面 rem 布局适配方法
2018/01/12 HTML / CSS
adidas美国官网:adidas US
2016/09/21 全球购物
W Concept美国:精选全球独立设计师
2017/02/22 全球购物
Bench加拿大官方网站:英国城市服装品牌
2017/11/03 全球购物
雷曼兄弟的五金店:Lehman’s Hardware Store
2019/04/10 全球购物
澳大利亚领先的亚麻品牌:Bed Threads
2019/12/16 全球购物
三年级语文教学反思
2014/02/01 职场文书
函授生自我鉴定
2014/03/25 职场文书
讲解员培训方案
2014/05/04 职场文书
2014年财务工作自我评价
2014/09/23 职场文书
海上钢琴师的观后感
2015/06/11 职场文书
私人贷款担保书该怎么写呢?
2019/07/02 职场文书
Golang 切片(Slice)实现增删改查
2022/04/22 Golang