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 相关文章推荐
js仿百度有啊通栏展示效果实现代码
May 28 Javascript
JS控制日期显示的小例子
Nov 23 Javascript
javascript的parseFloat()方法精度问题探讨
Nov 26 Javascript
使用jquery prev()方法找到同级的前一个元素
Jul 11 Javascript
使用requestAnimationFrame实现js动画性能好
Aug 06 Javascript
详解js树形控件—zTree使用总结
Dec 28 Javascript
JavaScript两个变量交换值的实现方法
Mar 01 Javascript
使用Electron构建React+Webpack桌面应用的方法
Dec 15 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
Nov 13 Javascript
TypeScript开发Node.js程序的方法
Apr 30 Javascript
Vue前端项目部署IIS的实现
Jan 06 Javascript
vue学习笔记之slot插槽基本用法实例分析
Feb 01 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
兼容ie6浏览器的php下载文件代码分享
2014/07/14 PHP
PHP中set_include_path()函数相关用法分析
2016/07/18 PHP
JavaScript读取中文cookie时的乱码问题的解决方法
2009/10/14 Javascript
2014 年最热门的21款JavaScript框架推荐
2014/12/25 Javascript
《JavaScript DOM 编程艺术》读书笔记之DOM基础
2015/01/09 Javascript
javascript上下方向键控制表格行选中并高亮显示的方法
2015/02/13 Javascript
javascript实现 百度翻译 可折叠的分享按钮列表
2015/03/12 Javascript
JS中的THIS和WINDOW.EVENT.SRCELEMENT详解
2015/05/25 Javascript
Jquery实现瀑布流布局(备有详细注释)
2015/07/31 Javascript
微信小程序引用公共js里的方法的实例详解
2017/08/17 Javascript
vue 路由嵌套高亮问题的解决方法
2018/05/17 Javascript
详解vue-cli下ESlint 配置说明
2018/09/03 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
vue-resourc发起异步请求的方法
2020/02/11 Javascript
新手如何快速入门Python(菜鸟必看篇)
2017/06/10 Python
python实现猜数字小游戏
2020/03/24 Python
微信小程序python用户认证的实现
2019/07/29 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
2020/06/04 Python
CSS3美化表单控件全集
2016/06/29 HTML / CSS
详解html5 canvas常用api总结(二)--绘图API
2016/12/14 HTML / CSS
异常和异常类的概念
2014/09/12 面试题
我想声明一个指针并为它分配一些空间, 但却不行。这些代码有什么 问题?char *p; *p = malloc(10);
2016/10/06 面试题
平面设计自荐信
2013/10/07 职场文书
遗体告别仪式答谢词
2014/01/23 职场文书
数控专业大学毕业生职业规划范文
2014/02/06 职场文书
蟋蟀的住宅教学反思
2014/04/26 职场文书
环保项目建议书
2014/08/26 职场文书
贫困证明书格式及范文
2014/10/15 职场文书
2014年保密工作总结
2014/11/22 职场文书
优秀党员先进事迹材料
2014/12/18 职场文书
公司酒会主持词
2015/07/02 职场文书
企业愿景口号
2015/12/25 职场文书
为什么 Nginx 比 Apache 更牛逼
2021/03/31 Servers
vue使用v-model进行跨组件绑定的基本实现方法
2021/04/28 Vue.js
redis sentinel监控高可用集群实现的配置步骤
2022/04/01 Redis
Nginx 常用配置
2022/05/15 Servers