Query AJAX保存数据中文乱码解决方案

前端之家收集整理的这篇文章主要介绍了Query AJAX保存数据中文乱码解决方案前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在处理一个GB2312编码的网站,用jQuery AJAX提交时,无论是在数据库,还是load返回页面中文数据都变成了乱码。
jQuery AJAX中文乱码原因在于javascript使用的是UTF-8国际编码,UTF-8每个汉字用4个字节来存储。而我的页面数据库都用GB2312编码,这就造成了AJAX send数据的时候出现中文乱码的问题。

解决方法是,所有的页面编码声明都用utf-8,数据库、表、字段也用utf-8。

代码如下 复制代码

<Meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

MysqL_set_charset('UTF8')


“三码合一”指的是:“数据库”、“视图”、“代码”,编码的统一。文件存储也要是utf-8编码格式。

原理和更复杂的解决方法,就不多写了,用的时候搜一下。

推断:看来要解决这个中文乱码问题,就必须给AJAX异步提交指定显 示的charset!

马上查阅JQuery的AJAX工具函数的说明,发现options中有一个指定content-type的参数,给我的AJAX代码加上

代码如下 复制代码

jQuery(form).ajaxSubmit({ url: "ajax.aspx?a=memberlogin",type: "post",dataType: "json",contentType: "application/x-www-form-urlencoded; charset=utf-8",success: showLoginResponse });

猜你在找的Ajax相关文章