JQuery的Validation插件中Remote验证的中文问题


Posted in Javascript onJuly 26, 2010

根据上次的经验,我将

contentType: "application/x-www-form-urlencoded; charset=utf-8",

加入到ajax请求的参数中,结果这次居然不起作用了。

多次观察Fiddler结果,发现无效后,只好打开JQuery.Validation.js寻求答案了。

在remote的代码中,我发现:

... 
var data = {}; 
data[element.name] = value; 
$.ajax($.extend(true, { 
url: param, 
mode: "abort", 
port: "validate" + element.name, 
dataType: "json", 
data: data, 
....

原来插件自己定义了提交的数据,直接将要验证的数据以json格式传给服务器了。难怪针对form的编码定义无效。马上将value进行强制的编码encodeURIComponent(value),果然就好了!

后记:

这种方法在服务器代码处理的时候,必须显式地解码数据,通用性很差。于是,之后还是回到起点来研究更好的方法。

为了防止Validation插件对输入数据的处理,我试着采用自己的Option来覆盖Validation的Option定义:

remote: { 
url: "ajax.aspx?a=xxx", 
type: "post", 
dataType: "json", 
contentType: "application/x-www-form-urlencoded; charset=utf-8", 
data: { txt1: function() { return $("#txt1").val(); } } 
}

然后在服务器端代码中,取得Form数据中的对应数据,这样就避免了对Validation的修改,同时也满足了我的要求。
原文链接: http://www.luyuliang.com/post/chinese-issue-in-jquery-validation-plugin.aspx
Javascript 相关文章推荐
javascript中字符串替换函数replace()方法与c# 、vb 替换有一点不同
Jun 25 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
Nov 10 Javascript
完美解决IE低版本不支持call与apply的问题
Dec 05 Javascript
详解iframe与frame的区别
Jan 13 Javascript
Angular2搜索和重置按钮过场动画
May 24 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
Nov 08 jQuery
vue嵌套路由与404重定向实现方法分析
May 04 Javascript
Vue-Router的使用方法
Sep 05 Javascript
如何通过JS实现转码与解码
Feb 21 Javascript
vue中使用v-for时为什么不能用index作为key
Apr 04 Javascript
tracking.js实现前端人脸识别功能
Apr 16 Javascript
element-ui中dialog弹窗关闭按钮失效的解决
Sep 22 Javascript
基于JQuery的一句代码实现表格的简单筛选
Jul 26 #Javascript
jQuery getJSON 处理json数据的代码
Jul 26 #Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
Jul 25 #Javascript
用jquery实现下拉菜单效果的代码
Jul 25 #Javascript
利用腾讯的ip地址库做ip物理地址定位
Jul 24 #Javascript
利用google提供的API(JavaScript接口)获取网站访问者IP地理位置的代码详解
Jul 24 #Javascript
来自qq的javascript面试题
Jul 24 #Javascript
You might like
解析PHP正则提取或替换img标记属性
2013/06/26 PHP
php禁止直接从浏览器输入地址访问.php文件的方法
2014/11/04 PHP
php计算给定日期所在周的开始日期和结束日期示例
2017/02/06 PHP
php封装的mongodb操作类代码
2017/08/06 PHP
PHP使用标准库spl实现的观察者模式示例
2018/08/04 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
jquery 无限级联菜单案例分享
2013/03/26 Javascript
原生JS可拖动弹窗效果实例代码
2013/11/09 Javascript
js实现图片旋转的三种方法
2014/04/10 Javascript
jQuery实现鼠标划过展示大图的方法
2015/03/09 Javascript
JavaScript判断是否为数字的4种方法及效率比较
2015/04/01 Javascript
jquery仿百度经验滑动切换浏览效果
2015/04/14 Javascript
JavaScript实现带箭头标识的多级下拉菜单效果
2015/08/27 Javascript
jquery显示隐藏元素的实现代码
2016/05/19 Javascript
jQuery下拉菜单的实现代码
2016/11/03 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
js css3实现图片拖拽效果
2017/03/04 Javascript
js学习总结_轮播图之渐隐渐现版(实例讲解)
2017/07/17 Javascript
Vue中定义全局变量与常量的各种方式详解
2017/08/23 Javascript
layui表格内放置图片,并点击放大的实例
2019/09/10 Javascript
javascript实现函数柯里化与反柯里化过程解析
2019/10/08 Javascript
解决vuex数据异步造成初始化的时候没值报错问题
2019/11/13 Javascript
微信公众号H5之微信分享常见错误和问题(小结)
2019/11/14 Javascript
通过实例解析vuejs如何实现调试代码
2020/07/16 Javascript
Python字符串替换实例分析
2015/05/11 Python
Python实现字典按key或者value进行排序操作示例【sorted】
2019/05/03 Python
python简单鼠标自动点击某区域的实例
2019/06/25 Python
python爬虫解决验证码的思路及示例
2019/08/01 Python
移动端HTML5 input常见问题(小结)
2020/09/28 HTML / CSS
梅西酒窖:Macy’s Wine Cellar
2018/01/07 全球购物
新东网科技Java笔试题
2012/07/13 面试题
新生入学欢迎词
2015/01/26 职场文书
检讨书范文2000字
2015/01/28 职场文书
校园音乐节目广播稿
2015/08/19 职场文书
工作简历的自我评价
2019/05/16 职场文书
MySQL日期时间函数知识汇总
2022/03/17 MySQL