jQuery AJAX字符编码
我目前正在编码一个法语网站。有一个时间表页面,可以使用侧面的链接加载另一天的时间表。
这是我用来执行此操作的JS:
<script type="text/javascript"> function load(y) {
$.get(y,function(d) {
$("#replace").html(d);
mod();
});
}
function mod() {
$("#dates a").click(function() {
y = $(this).attr("href");
load(y);
return false;
});
}
mod();
</script>
实际的AJAX就像一个魅力。我的问题在于对请求的响应。
因为它是法语网站,所以有很多带重音的字母。出于这个原因,我使用ISO-8859-15字符集。但是,在响应我的AJAX请求时,由于字符编码似乎已更改回UTF-8,所以重音符号已变成?。
如何避免这种情况?我已经尝试过在要求的文档顶部添加一些PHP来设置字符集:
<?php header('Content-Type: text/html; charset=ISO-8859-15'); ?>
但这似乎也不起作用。有什么想法吗?
另外,当您中的任何人都在看…为什么加载新页面时最右边的列似乎变小,导致表变形,并且其中的每一个<li>
都<td>
换行到下一行?
干杯
回答:
UTF-8应该可以处理所有重音符号和外国字符-为什么不在数据源上使用它?
[
归档测试文件的副本。]与您的数据
一切都应该首先是UTF-8。我将文件加载到notepad ++中,转换为utf-8,然后手动将字符更改为重音符号。一旦完成,一切都会像魅力一样运作。
顺便说一句,除非您的服务器定义为php-process
.html文件,否则使用ajax加载的文件不会获得iso字符集。如果您坚持使用iso字符集,请请求一个php文件而不是html文件,并在标头中定义字符集(而不是在文件本身中)
以上是 jQuery AJAX字符编码 的全部内容, 来源链接: utcz.com/qa/401150.html