encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。
转自http://blog.csdn.net/allsharps/article/details/6875419
解决jQuery中Ajax的乱码问题
- $(document).ready(function(){
- // alert(encodeURI("我"));
- $.ajax({url:"a.php?a=" + encodeURIComponent("我们"),
- success:function(re){
- alert(re);
- },
- data:{"b":"我们"},
- error:function(r,r1,r2){
- alert(1);
- }
- });
- });
POST表单中的数据一直都正常,只是URL中出现中文的话,服务器程序收到的会是乱码,比如/a.php?a=中文,这时候如果服务器程序使用gb2312则正常,使用UtF-8则乱码,
解决方法,所有页面使用utf-8,ajax提交的时候,对URL中的中文进行编码(encodeURIComponent("我们"),),然后再提交就不会有任何问题,只是用户看URL的时候不太直观
如果要想在URL中使用,可能需要在服务器程序对URL进行判断,有双字节字符,则进行GB2312解码。
真的可以诶!
时间: 2024-10-30 14:08:58