欢迎来到3672js教程,我们关注js教程、js框架、js代码特效等。

解决jQuery对表单serialize后出现的乱码问题

3672Js.Com2019-03-10 13:07 来源:未知 阅读:768 关注度3

解决jQuery对表单serialize后出现的乱码问题


代码出自于jQuery formValidator表单验证插件(4.0.2新增),适用于所有的平台。

通过看jQuery源码可以知道,serialize方法是通过encodeURIComponent编码的,所以解决乱码的最笨方法:

1、重新分解序列化后的值

2、把分解的值重新decodeURIComponent回来

3、再重新用escape编码

4、重新拼接

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.3672js.com] function serialize(objs)
{
var parmString = $(objs).serialize();
var parmArray = parmString.split("&");
var parmStringNew="";
$.each(parmArray,function(index,data){
var li_pos = data.indexOf("=");
if(li_pos >0){
var name = data.substring(0,li_pos);
var value = escape(decodeURIComponent(data.substr(li_pos+1)));
var parm = name+"="+value;
parmStringNew = parmStringNew=="" ? parm : parmStringNew + '&' + parm;
}
});
return parmStringNew;
}

本站文章为3672js教程网友分享投稿,版权归原作者,欢迎任何形式的转载,但请务必注明出处。同时文章内容如有侵犯了您的权益,请联系我们处理。
评论已被关闭
{dede:include filename="foot.htm"/}