我知道这听起来很糟糕,但这是必要的 .
我在一个带有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 encodig,因为这会破坏其他内容 .
我已经试过没有成功这些脚本:
我可以做错吗?
Edit: escape
函数对我没用,因为它将这些空间字符转换为对服务器无用的前缀代码,然后搜索 art%EDculo
.
Edit 使用 encodeURIComponent
函数服务器理解 art%C3%ADculo
. 附:我只是使用 artículo
这个词进行测试,但它应该涵盖所有特殊字符的解决方案 .
2 回答
最后,运行该服务器的人给了我们访问服务器的权限,我们制作了一个utf-8兼容的php脚本 . 所以我不在乎了 .
您可以尝试设置表单accept-charset: