为什么用jquery ajax返回的都是UTF-8编码,能返回GB2312吗

我的原网站全部都是gb2312编码的
2024-12-02 20:40:58
推荐回答(5个)
回答1:

可以的,把发送文档和接收文档都设置成GB2312的编码就可以。AJAX最忌不同编码的文档在一起。

GB2312-80字符集,中文名国家标准字符集(GB=GuóBiāo国标)。收入汉字6763个,符号715个,总计7478个字符,这是大陆普遍使用的简体字字符集。楷体-GB2312、仿宋-GB2312、华文行楷等市面上绝大多数字体支持显示这个字符集,亦是大多数输入法所采用的字符集。市面上绝大多数所谓的繁体字体,其实采用的是GB-2313字符集简体字的编码,用字体显示为繁体字,而不是直接用GBK字符集中繁体字的编码,错误百出。

回答2:

不可以的,AJAX只支持UTF-8编码,你可以通过编码转换来解决编码的问题,或将程序统一编码为UTF-8

回答3:

可以在ajax发送端使用escape方法。然后在接收端使用 unescape方法转换

例子:

gb2312.html






无标题文档



获得ajax中文






gb2312.php

echo escape(" GB2312中文");
function escape($str) {
preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v) {
if(ord($v[0]) < 128)
$ar[$k] = rawurlencode($v);
else
$ar[$k] = "%u".bin2hex(iconv("GB2312","UCS-2",$v));
}
return join("",$ar);
}
?>

回答4:

可以的啊 设置页面编码

回答5:

可以的啊 设置页面编码