TIM*_*MEX 24 javascript ajax jquery utf-8 internet-explorer-8
我发送UTF-8,日文文本到我的服务器.它适用于Firefox.我的access.log和标题是:
/ajax/?q=%E6%BC%A2%E5%AD%97
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Content-Type application/x-www-form-urlencoded; charset=UTF-8
Run Code Online (Sandbox Code Playgroud)
但是,在IE8中,我的access.log说:
/ajax/?q=??
Run Code Online (Sandbox Code Playgroud)
出于某种原因,IE8正在将我的AJAX调用变成问号.为什么!?我根据一些教程添加了scriptCharset和ContentType,但仍然没有运气.
这是我的代码:
$.ajax({
method:"get",
url:"/ajax/",
scriptCharset: "utf-8" ,
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
data:"q="+query ...,
...
})
Run Code Online (Sandbox Code Playgroud)
Gab*_*oli 54
尝试使用编码查询参数 encodeURIComponent()
data:"q="+encodeURIComponent( query )
Run Code Online (Sandbox Code Playgroud)
由于bobince在他的评论中非常正确地指出,如果你使用对象表示法将参数传递给ajax方法,它将处理编码本身..
所以
data:{ q : query }
Run Code Online (Sandbox Code Playgroud)
将使jQuery处理编码..
| 归档时间: |
|
| 查看次数: |
49851 次 |
| 最近记录: |