jquery.form 提交编码问题

mako 发布于 2012/01/13 23:32
阅读 1K+
收藏 0

我用的是jquery.form最新版本 2.94  表单可以正常提交,但提交后编码就变了,我站是GBK编码,用jquery.form 提交的数据成了UTF-8编码,写入数据库也都是乱码,我不想再这个表单提交进行转码,以免以后改造麻烦,问下有什么解决方法没?

加载中
0
红薯
红薯

全站改 UTF-8 编码,数据库也是 UTF-8,会让你省很多事,避免很多很多的问题。

否则你就在提交处理进行转码吧,POST 操作一般 request.setCharacterEncoding 一下就可以了

0
mako
mako
@红薯,我也早想全站转UTF-8 了,昨天晚上又搞了一晚上,没成功,用一些小软件批量转完之后出很多问题,有没有全站转的好方法啊,教教咋
mako
mako
@Inside : 谢谢了,记得发给我呢,着急跑路到UTF-8,呵呵,谢谢了,发到我邮箱或给我留言work#liuhai.org
红烧猪崽
红烧猪崽
哈哈,编程习惯问题,嘿嘿
Inside
Inside
我自己写过一个python脚本,用来批量转编码,不过在单位的电脑不在家里,下周一发给你。
红薯
红薯
@mako : 一个个转是没问题,批量转就不晓得,俺从一开始都是UTF8,没遭遇过你的问题:)
mako
mako
@红薯 : 红薯老哥也没有任何好方法转文件吗?
下一页
0
mako
mako
尤其是PHP,转码之后好像很多功能都出问题,不知道是什么原因,PHP和html用什么方法转码?
mahone
mahone
php的utf8是没问题的,有问题可能在有没有bom头的地方
0
pyawen
pyawen

在form 里面添加 <form accept-charset="gb2312">  试一下   

另外header 里面是否指定了页面字符集 

<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>

0
mako
mako

引用来自“pyawen”的答案

在form 里面添加 <form accept-charset="gb2312">  试一下   

另外header 里面是否指定了页面字符集 

<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>

form里加编码也不管用,jquery.form自己独立跑路提交
pyawen
pyawen
看jquery.form 代码 没发现有指定编码方式呢,你找一下其他方面问题看一下
0
Inside
Inside

何必用jquery.form呢?jq本身就能把表单序列化为查询字符串,自己稍加改造把array转换成一个object,要处理编码问题,自己在转换过程中处理一下就行了,给你一个我用的小方法。

jQuery.fn.extend({
	toDataObj: function () {
		var dataArray = this.serializeArray();
		var dataObj = {};
		for (d in dataArray) {
			dataObj[dataArray[d].name] = dataArray[d].value;
		}

		return dataObj;
	}
});

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部