我在网站上使用ISO-8859-1 charset。 请求应部分由encodeURIComponent()编码,但此函数使用utf-8进行编码。
如何通过带有ISO-8859-1字符集的encodeURIComponent编码请求变量而不是utf-8?(或使用ISO-8859-1或其他方式进行编码的其他函数)。
更新: 也许在这种情况下使用escape()js函数poper选项?
谢谢, 约瑟夫
答案 0 :(得分:0)
我已经制作了script for escaping Windows-1250个字符。您可以自己创建翻译表,也可以使用我使用的translation table generation script从维基百科生成翻译表。该脚本至少应该在IE 7,FF 3.6和Opera 11上运行(尚未在其他浏览器上测试过)。
jQuery的示例代码:
var sBaseUrl = 'ajax.script.php';
var oData = {
some_param : 'Zażółć gęślą jaźń',
other_param : '1',
};
// build url
var url = localBuildURL(sBaseUrl, oData);
// get
$.ajax({
url: url,
dataType: 'text', // JSON doesn't always parse...
success: function(txt, status, xhr)
{
// do something with txt
// or parse with: data = $.parseJSON(txt);
}
});
编辑实际上...... ISO-8591-1不需要转换表。其中的所有字符仅为一个字节。 escape
功能应该足够了。
答案 1 :(得分:-2)
你应该没事。我认为ISO-8859-1完全封装在UTF-8中,没有任何问题。