formvalidator驗(yàn)證插件中有關(guān)ajax驗(yàn)證問題
更新時(shí)間:2013年01月04日 12:03:40 作者:
jquery formvalidator插件是不錯(cuò)的國產(chǎn)驗(yàn)證插件了,做點(diǎn)普通的校驗(yàn)也是很方便的,但最近遇到個(gè)問題,發(fā)現(xiàn)如果表單整個(gè)表單是AJAX提交時(shí),就不能按傳統(tǒng)的做法了
jquery formvalidator插件是不錯(cuò)的國產(chǎn)驗(yàn)證插件了,做點(diǎn)普通的校驗(yàn)也是很方便的,但最近遇到個(gè)問題,發(fā)現(xiàn)如果表單整個(gè)表單是AJAX提交時(shí),就不能按傳統(tǒng)的做法了,比如:
$ajax.post("...............")
$.formValidator.initConfig({formID:"applyForm",onError:function(msg){alert(msg)}});
$("#reason").formValidator().inputValidator({min:1,onErrorMin:'請(qǐng)輸入申請(qǐng)內(nèi)容及原因'});
很遺憾,單這樣是達(dá)不到AJAX FORM提交并同時(shí)用formvalidator校驗(yàn)的效果的。如果要同時(shí)使用formvalidator和ajax提交一起的話,首先看到的是formvalidtor手冊(cè)中關(guān)于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 : '有數(shù)據(jù)正在異步驗(yàn)證,請(qǐng)稍等...'
});
看了下,這個(gè)方法看上去是可以的,但實(shí)際上,居然對(duì)中文支持不好,我的是
struts2,spring 3,tomcat也是用utf-8,sturts2等全部用UTF-8編碼了,但居然還是說當(dāng)取的
struts2的中文值的時(shí)候,說:
org.apache.tomcat.util.http.Parameters processParameters
警告: Parameters: Character decoding failed. Parameter skipped.
java.io.CharConversionException: isHexDigit.
解決方式見:
http://www.iteye.com/problems/7099
但這個(gè)問題很奇怪,而且感覺用formvalidtor本身的方法太麻煩,所以就找了另外的方法,果然好用,那就是使用
if ($.formValidator.pageIsValid('1')==true)
{
$.post("xxxxxxxxxxxxxxxxx")
}
其他校驗(yàn)規(guī)則照樣寫,如果頁面只有一個(gè)表單,則默認(rèn)為1,這里的pageIsValid,是校驗(yàn)這個(gè)組的控件所有都通過校驗(yàn)了,就繼續(xù)做某事,你看,這樣就簡單多了
復(fù)制代碼 代碼如下:
$ajax.post("...............")
$.formValidator.initConfig({formID:"applyForm",onError:function(msg){alert(msg)}});
$("#reason").formValidator().inputValidator({min:1,onErrorMin:'請(qǐng)輸入申請(qǐng)內(nèi)容及原因'});
很遺憾,單這樣是達(dá)不到AJAX FORM提交并同時(shí)用formvalidator校驗(yàn)的效果的。如果要同時(shí)使用formvalidator和ajax提交一起的話,首先看到的是formvalidtor手冊(cè)中關(guān)于ajaxform的用法
復(fù)制代碼 代碼如下:
$.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 : '有數(shù)據(jù)正在異步驗(yàn)證,請(qǐng)稍等...'
});
看了下,這個(gè)方法看上去是可以的,但實(shí)際上,居然對(duì)中文支持不好,我的是
struts2,spring 3,tomcat也是用utf-8,sturts2等全部用UTF-8編碼了,但居然還是說當(dāng)取的
struts2的中文值的時(shí)候,說:
org.apache.tomcat.util.http.Parameters processParameters
警告: Parameters: Character decoding failed. Parameter skipped.
java.io.CharConversionException: isHexDigit.
解決方式見:
http://www.iteye.com/problems/7099
但這個(gè)問題很奇怪,而且感覺用formvalidtor本身的方法太麻煩,所以就找了另外的方法,果然好用,那就是使用
復(fù)制代碼 代碼如下:
if ($.formValidator.pageIsValid('1')==true)
{
$.post("xxxxxxxxxxxxxxxxx")
}
其他校驗(yàn)規(guī)則照樣寫,如果頁面只有一個(gè)表單,則默認(rèn)為1,這里的pageIsValid,是校驗(yàn)這個(gè)組的控件所有都通過校驗(yàn)了,就繼續(xù)做某事,你看,這樣就簡單多了
相關(guān)文章
在jQuery中 關(guān)于json空對(duì)象篩選替換
本篇文章,小編將為大家介紹,在jQuery中 關(guān)于json空對(duì)象篩選替換,有需要的朋友可以參考一下2013-04-04
google jQuery 引用文件,jQuery 引用地址集合(jquery 1.2.6至jquery1.5.2)
很多網(wǎng)站都是使用這種方式引入,客戶的瀏覽器可能已經(jīng)緩存過了 jquery??梢灾苯诱{(diào)用本地的,速度更快2011-04-04
jQuery學(xué)習(xí)筆記之控制頁面實(shí)現(xiàn)代碼
每一段jQuery對(duì)應(yīng)一段html代碼,以標(biāo)記為準(zhǔn)則,css為共用代碼,每段代碼需獨(dú)立運(yùn)行。html和css代碼在文章尾部,如下例2012-02-02
a標(biāo)簽跳轉(zhuǎn)到指定div,jquery添加和移除class屬性的實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄猘標(biāo)簽跳轉(zhuǎn)到指定div,jquery添加和移除class屬性的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-10-10
jQuery的內(nèi)容過濾選擇器學(xué)習(xí)教程
這篇文章主要介紹了jQuery的內(nèi)容過濾選擇器學(xué)習(xí)教程,詳細(xì)地整理了jQuery中四個(gè)過濾器的相關(guān)函數(shù)用法,需要的朋友可以參考下2016-04-04
jquery 獲取標(biāo)簽名(tagName)示例代碼
如果是需要取到tagName后再進(jìn)行判斷,那么下面的代碼或許對(duì)大家有所幫助,感興趣的朋友不妨嘗試一下哈2013-07-07
jQuery實(shí)現(xiàn)仿Alipay支付寶首頁全屏焦點(diǎn)圖切換特效
這篇文章主要介紹了jQuery實(shí)現(xiàn)仿Alipay支付寶首頁全屏焦點(diǎn)圖切換特效,涉及jQuery插件jquery.kinMaxShow的相關(guān)使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-05-05

