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 相关文章推荐
JAVASCRIPT模式窗口中下载文件无法接收iframe的流
Oct 11 Javascript
控制input输入框中提示信息的显示和隐藏的方法
Feb 12 Javascript
JavaScript function 的 length 属性使用介绍
Sep 15 Javascript
javascript中indexOf技术详解
May 07 Javascript
bootstrap表格分页实例讲解
Dec 30 Javascript
javascript基本数据类型和转换
Mar 17 Javascript
一次围绕setTimeout的前端面试经验分享
Jun 15 Javascript
javascript 作用于作用域链的详解
Sep 27 Javascript
webpack构建换肤功能的思路详解
Nov 27 Javascript
vue 使用高德地图vue-amap组件过程解析
Sep 07 Javascript
Layui数据表格 前后端json数据接收的方法
Sep 19 Javascript
vuex的使用步骤
Jan 06 Vue.js
使用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 的 __FILE__ 常量
2007/01/15 PHP
php错误级别的设置方法
2013/06/17 PHP
通过table标签,PHP输出EXCEL的实现方法
2013/07/24 PHP
9个比较实用的php代码片段
2016/03/15 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
php版交通银行网银支付接口开发入门教程
2016/09/26 PHP
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
js 通用订单代码
2013/12/23 Javascript
使用JavaScript实现连续滚动字幕效果的方法
2015/07/07 Javascript
JS模拟酷狗音乐播放器收缩折叠关闭效果代码
2015/10/29 Javascript
AngularJS中的Directive实现延迟加载
2016/01/25 Javascript
原生js实现图片层叠轮播切换效果
2016/02/02 Javascript
Vue.js实现简单ToDoList 前期准备(一)
2016/12/01 Javascript
Bootstrap select实现下拉框多选效果
2016/12/23 Javascript
Vue 过渡(动画)transition组件案例详解
2017/01/22 Javascript
详解如何构建Angular项目目录结构
2017/07/13 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
2017/10/16 Javascript
redux-saga 初识和使用
2018/03/10 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
2019/04/04 Javascript
layui关闭层级、简单监听的实例
2019/09/06 Javascript
vue实现弹幕功能
2019/10/25 Javascript
vue 取出v-for循环中的index值实例
2019/11/09 Javascript
[04:00]DOTA2解说界神雕侠侣 CJ第四天谷子现场过生日
2013/07/30 DOTA
python基础教程之基本内置数据类型介绍
2014/02/20 Python
用Python和MD5实现网站挂马检测程序
2014/03/13 Python
Django实现表单验证
2018/09/08 Python
Python openpyxl 遍历所有sheet 查找特定字符串的方法
2018/12/10 Python
python批量识别图片指定区域文字内容
2019/04/30 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
2019/05/27 Python
查看Python依赖包及其版本号信息的方法
2019/08/13 Python
python 正则表达式参数替换实例详解
2020/01/17 Python
pytorch进行上采样的种类实例
2020/02/18 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
Python自带的IDE在哪里
2020/07/01 Python
英国顶尖手表珠宝品牌独家授权经销商:HS Johnson
2020/10/28 全球购物
收入证明范本
2015/06/12 职场文书