现在的位置: 首页 > 综合 > 正文

JQuery/formValidator ajax中文乱码最合理解决方式

2013年08月17日 ⁄ 综合 ⁄ 共 711字 ⁄ 字号 评论关闭

 最近使用jQuery遇到中文乱码问题,其实他的中文乱码就是因为contentType没有指定编码,
只需在jQuery.js中搜索contentType
然后在application/x-www-form-urlencoded后面加上; charset=UTF-8
最终变成contentType:"application/x-www-form-urlencoded; charset=UTF-8"

使用formValidator 的朋友,需要修改几个地方,我用的formValidator 3.3 发现2个问题。修改formValidator.js文件

1.中文乱码,首先按照上面修改jquery库的contentType,然后formValidator.js中搜索ajaxValid。

删除var parm = "clientid="+id+"&"+id+"="+encodeURIComponent(srcjo.val()); 中的encodeURIComponent()
变成var parm = "clientid="+id+"&"+id+"="+srcjo.val(); 就可以了。

2.data总是使用初始化的data

定义个参数 var ls_data = setting.data;
找到这段代码就在(上面那段代码的下一行)ls_url = ls_url + (ls_url.indexOf("?")>0?("&"+ parm) : ("?"+parm));

修改为ls_data = ls_data + (ls_url.indexOf("?")>0?("&"+ parm) : ("?"+parm));
然后把 data : setting.data, 修改为data : ls_data, 就可以了

抱歉!评论已关闭.