formValidator3.3的ajaxValidator

    在表单验证的时候,会遇到一些跟后台action做交互的情况,可采用ajaxValidator的方式代替一般jquery使用的ajax提交方式:

   

    $("#test1")

    .formValidator({onshow:"请输入用户名,只有输入/"maodong/"才是对的",onfocus:"用户名至少6个字符,最多10个字符",oncorrect:"该用户名可以注册"})

    .inputValidator({min:6,max:10,onerror:"你输入的用户名非法,请确认"})

    .regexValidator({regexp:"username",datatype:"enum",onerror:"用户名格式不正确"})
     .ajaxValidator({
         type : "post",
         url : "mytest.action",
         datatype : "json",
         success : function(data){ 
            if( data == "1" )
           {
                return true;
           }
            else
          {
                return false;
           }
       },
  buttons: $("#button"),
  error: function(){alert("服务器没有返回数据,可能服务器忙,请重试");},
  onerror : "该用户名不可用,请更换用户名",
  onwait : "正在对用户名进行合法性校验,请稍候..."
 });

  

    随即而来的是中文乱码的问题。在网上搜索了一把,可采取暴力修改formValidator.js的方式来解决:

   修改源码:

formValidator.js

 //ajax校验
 ajaxValid : function(returnObj)的方法中

 var parm = "clientid="+id+"&"+id+"="+encodeURIComponent(srcjo.val());

改为:

 var parm = "clientid="+id+"&"+id+"="+encodeURIComponent(encodeURIComponent(srcjo.val()));

因为只有通过前台两次编码,后台一次解码就可以解决乱码问题

thename=java.net.URLDecoder.decode(thename,"UTF-8");

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值