当利用js或者jquery的ajax发送数据乱码问题。([color=red][b]笔者编码方式选为GBK[/b][/color])
1、若数据以[color=blue]get[/color]方式发送 (数据以?a=a&b=b&c=c....连接在url尾部发送)
只要进行如下转码即可。
name = new String(name.getBytes("ISO-8859-1"), "GBK");
2、若数据以[color=red]post[/color]方式发送。
[color=red]js方式[/color]:
request.open("post","url", true);
request.send("name=" + name);
需要在send之前进行编码
//这里要两次
name= encodeURIComponent(name);
name= encodeURIComponent(name);
后台接收参数时要解码即可
name= URLDecoder.decode(name, "UTF-8");这里一定是UTF-8(js编码规定)
[color=red]jquery方式:[/color] 与js稍有不同。
//这里只要1次
name= encodeURIComponent(name);
1、若数据以[color=blue]get[/color]方式发送 (数据以?a=a&b=b&c=c....连接在url尾部发送)
只要进行如下转码即可。
name = new String(name.getBytes("ISO-8859-1"), "GBK");
2、若数据以[color=red]post[/color]方式发送。
[color=red]js方式[/color]:
request.open("post","url", true);
request.send("name=" + name);
需要在send之前进行编码
//这里要两次
name= encodeURIComponent(name);
name= encodeURIComponent(name);
后台接收参数时要解码即可
name= URLDecoder.decode(name, "UTF-8");这里一定是UTF-8(js编码规定)
[color=red]jquery方式:[/color] 与js稍有不同。
//这里只要1次
name= encodeURIComponent(name);