我知道这听起来很糟糕,但这是必要的。
我在一个带有utf-8字符集的网站上有一个HTML表单,该表单被发送到与iso-8859-1字符集一起使用的服务器。问题是服务器无法正确理解我们在西班牙使用的字符à, á, è, é, ì, í, ò, ó, ù, ú, ñ, ç
等等。因此,如果我搜索artículo
之类的内容,则会回答artÃculo
找不到任何内容。
我发送带有ajaxform(http://malsup.com/jquery/form/)的表单,代码就像这样:
$(".form-wrap, #pagina").on("submit", "form", function(event){
event.preventDefault();
$(this).ajaxSubmit({
success: function(data){
$("#temp").html(data);
//Handle data in #temp div
$("#temp").html('');
}
});
return false;
});
我的问题是:我无法访问搜索服务器,我无法将整个网站更改为iso-8859-1编码,因为这会破坏其他内容。
我已经试过这些脚本没有成功:
我可能做错了吗?
编辑: escape
函数对我没用,因为它将这些空间字符转换为对服务器无用的%
前缀代码,然后搜索art%EDculo
。
encodeURIComponent
的{{1}}函数 修改。附:我只是使用art%C3%ADculo
这个词进行测试,但它应该涵盖所有特殊字符的解决方案。
答案 0 :(得分:2)
我在一个带有utf-8字符集的网站上有一个HTML表单,该表单被发送到与iso-8859-1字符集一起使用的服务器。
您可以尝试设置表单accept-charset:
<form accept-charset="iso-8859-1">
....
</form>
答案 1 :(得分:-3)
最后,运行该服务器的人给了我们访问服务器的权限,我们制作了一个utf-8兼容的php脚本。所以我不再关心了。