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 相关文章推荐
锋利的jQuery 第三章章节总结的例子
Mar 23 Javascript
javascript实现的图片切割多块效果实例
May 07 Javascript
谈谈JavaScript异步函数发展历程
Sep 29 Javascript
Node.js项目中调用JavaScript的EJS模板库的方法
Mar 11 Javascript
Bootstrap登陆注册页面开发教程
Jul 12 Javascript
Angular ng-repeat指令实例以及扩展部分
Dec 26 Javascript
Angular2-primeNG文件上传模块FileUpload使用详解
Jan 14 Javascript
JS实现的自动打字效果示例
Mar 10 Javascript
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
Oct 20 jQuery
vue单页面应用打开新窗口显示跳转页面的实例
Sep 21 Javascript
JavaScript 实现HTML DOM增删改查操作的常见方法详解
Jan 04 Javascript
微信小程序之导航滑块视图容器功能的实现代码(简单两步)
Jun 19 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中根据IP地址判断城市实现城市切换或跳转代码
2012/09/04 PHP
ThinkPHP关联模型操作实例分析
2012/09/23 PHP
浅谈php优化需要注意的地方
2014/11/27 PHP
利用PHP判断是手机移动端还是PC端访问的函数示例
2017/12/14 PHP
django中的ajax组件教程详解
2018/10/18 PHP
laravel-admin的图片删除实例
2019/09/30 PHP
JavaScript OOP类与继承
2009/11/15 Javascript
js写一个弹出层并锁屏效果实现代码
2012/12/07 Javascript
JavaScript对HTML DOM使用EventListener进行操作
2015/10/21 Javascript
JavaScript是如何实现继承的(六种方式)
2016/03/31 Javascript
JavaScript实现阿拉伯数字和中文数字互相转换
2016/06/12 Javascript
基于Vue.js实现数字拼图游戏
2016/08/02 Javascript
jQuery Ajax请求后台数据并在前台接收
2016/12/10 Javascript
简单实现js悬浮导航效果
2017/02/05 Javascript
vue基于mint-ui实现城市选择三级联动
2020/06/30 Javascript
vue项目中添加单元测试的方法
2018/07/21 Javascript
提升node.js中使用redis的性能遇到的问题及解决方法
2018/10/30 Javascript
vue基础之事件v-onclick="函数"用法示例
2019/03/11 Javascript
关于layui 实现点击按钮添加一行(方法渲染创建的table)
2019/09/29 Javascript
Vue data的数据响应式到底是如何实现的
2020/02/11 Javascript
Vue移动端项目实现使用手机预览调试操作
2020/07/18 Javascript
python获取外网ip地址的方法总结
2015/07/02 Python
python实现汉诺塔方法汇总
2016/07/25 Python
Python各类图像库的图片读写方式总结(推荐)
2018/02/23 Python
numpy使用fromstring创建矩阵的实例
2018/06/15 Python
python根据url地址下载小文件的实例
2018/12/18 Python
pytorch 可视化feature map的示例代码
2019/08/20 Python
python线程信号量semaphore使用解析
2019/11/30 Python
python 模拟登陆163邮箱
2020/12/15 Python
用OpenCV进行年龄和性别检测的实现示例
2021/01/29 Python
财会专业大学生求职信
2014/09/26 职场文书
大学生个人简历自我评价
2015/03/11 职场文书
那些美到让人窒息的诗句,值得你收藏!
2019/08/20 职场文书
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
AJAX学习笔记
2021/05/18 Javascript
Python 中 Shutil 模块详情
2021/11/11 Python