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 面向对象编程基础 多态
Aug 21 Javascript
jQuery $.each的用法说明
Mar 22 Javascript
JS中的this变量的使用介绍
Oct 21 Javascript
深入理解JavaScript系列(26):设计模式之构造函数模式详解
Mar 03 Javascript
Javascript动画效果(1)
Oct 11 Javascript
利用js查找数组中指定元素并返回该元素的所有索引示例
Mar 29 Javascript
jQuery滑动到底部加载下一页数据的实例代码
May 22 jQuery
基于vue实现swipe分页组件实例
May 25 Javascript
Vue自定义过滤器格式化数字三位加一逗号实现代码
Mar 23 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
Aug 14 Javascript
js字符串倒序的实例代码
Nov 30 Javascript
JavaScript eval()函数定义及使用方法详解
Jul 07 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
剧场版动画《PSYCHO-PASS 3 FIRST INSPECTOR》3月27日日本上映!
2020/03/06 日漫
PHP新手上路(十四)
2006/10/09 PHP
PHP中如何调用webservice的实例参考
2013/04/25 PHP
9段PHP实用功能的代码推荐
2014/10/14 PHP
ThinkPHP中redirect用法分析
2014/12/05 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
thinkphp jquery实现图片上传和预览效果
2020/07/22 PHP
php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法解析
2020/04/20 PHP
jQuery 1.2.x 升? 1.3.x 注意事项
2009/05/06 Javascript
js实现页面转发功能示例代码
2013/08/05 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
node.js实现博客小爬虫的实例代码
2016/10/08 Javascript
如何使用jquery实现文字上下滚动效果
2016/10/12 Javascript
基于js实现checkbox批量选中操作
2016/11/22 Javascript
vue-router中scrollBehavior的巧妙用法
2018/07/09 Javascript
webpack打包非模块化js的方法
2018/10/24 Javascript
vuex state中的数组变化监听实例
2019/11/06 Javascript
JS一次前端面试经历记录
2020/03/19 Javascript
解决vue项目 build之后资源文件找不到的问题
2020/09/12 Javascript
js实现网页随机验证码
2020/10/19 Javascript
[00:27]DOTA2次级职业联赛 - Lilith战队宣传片
2014/12/01 DOTA
python处理csv数据的方法
2015/03/11 Python
python代码 if not x: 和 if x is not None: 和 if not x is None:使用介绍
2016/09/21 Python
python更改已存在excel文件的方法
2018/05/03 Python
python3正则提取字符串里的中文实例
2019/01/31 Python
python3人脸识别的两种方法
2019/04/25 Python
pytorch下使用LSTM神经网络写诗实例
2020/01/14 Python
Opencv常见图像格式Data Type及代码实例
2020/11/02 Python
python实现图片,视频人脸识别(dlib版)
2020/11/18 Python
美国汽车性能部件和赛车零件网站:Vivid Racing
2018/03/27 全球购物
HEMA英国:荷兰原创设计
2018/08/28 全球购物
什么是抽象
2015/12/13 面试题
竞聘书模板
2014/03/31 职场文书
入党群众意见范文
2015/06/02 职场文书
消防演习感想
2015/08/10 职场文书
mysql查看表结构的三种方法总结
2022/07/07 MySQL