编程语言
首页 > 编程语言> > javascript – Jquery忽略编码ISO-8859-1

javascript – Jquery忽略编码ISO-8859-1

作者:互联网

我有一个网站,它从字符串中删除正确的编码(ISO-8859-1)并发送错误.

我在HTML中指定了此编码

<meta charset="ISO-8859-1">

我通过加载我的JavaScript

<script type="text/javascript" charset="ISO-8859-1" src="...

我通过JQuery Ajax Request发送信息(带有德语特殊字符’ö’和’ä’):

$.ajax({
    url: '..',
    type: 'POST',
    contentType: 'application/xml;charset=ISO-8859-1',
    data: xmlRequest.html(),...

这被转换为请求,在Chrome开发人员工具中,我在请求标题中看到了这一点:

..
Content-Type: application/xml;charset=UTF-8
..

那里发生了什么?

当然特殊字符编码错误(“Ô而不是“ö”)服务器无法理解我,我得到一个错误.

解决方法:

因为我有同样的问题,我会提供一个适合我的解决方案.背景:Microsoft Excel太愚蠢了,无法在字符集UTF-8中导出CSV文件:

$.ajax({
    url: '...',
    contentType: 'Content-type: text/plain; charset=iso-8859-1',
    // This is the imporant part!!!
    beforeSend: function(jqXHR) {
        jqXHR.overrideMimeType('text/html;charset=iso-8859-1');
    }
});

标签:iso-8859-1,content-type,javascript,jquery,character-encoding
来源: https://codeday.me/bug/20190919/1812365.html