APS.NET和MVC3解决jQuery中Ajax的乱码问题

encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。

转自http://blog.csdn.net/allsharps/article/details/6875419

解决jQuery中Ajax的乱码问题

 

  1. $(document).ready(function(){  
  2. //    alert(encodeURI("我"));  
  3.     $.ajax({url:"a.php?a=" + encodeURIComponent("我们"),  
  4.                     success:function(re){  
  5.                         alert(re);  
  6.                         },  
  7.           data:{"b":"我们"},  
  8.                     error:function(r,r1,r2){  
  9.                         alert(1);  
  10.                     }  
  11.             });  
  12.     });  

 

POST表单中的数据一直都正常,只是URL中出现中文的话,服务器程序收到的会是乱码,比如/a.php?a=中文,这时候如果服务器程序使用gb2312则正常,使用UtF-8则乱码,

解决方法,所有页面使用utf-8,ajax提交的时候,对URL中的中文进行编码(encodeURIComponent("我们"),),然后再提交就不会有任何问题,只是用户看URL的时候不太直观

 

如果要想在URL中使用,可能需要在服务器程序对URL进行判断,有双字节字符,则进行GB2312解码。

 真的可以诶!
 

时间: 2024-10-30 14:08:58

APS.NET和MVC3解决jQuery中Ajax的乱码问题的相关文章

jQuery中ajax的使用与缓存问题的解决方法

本篇文章主要介绍了jQuery中ajax的使用与缓存问题的解决方法.需要的朋友可以过来参考下,希望对大家有所帮助 1:GET访问 浏览器 认为 是等幂的 就是 一个相同的URL 只有一个结果[相同是指 整个URL字符串完全匹配] 所以 第二次访问的时候 如果 URL字符串没变化 浏览器是 直接拿出了第一次访问的结果   POST则 认为是一个 变动性 访问 (浏览器 认为 POST的提交 必定是 有改变的)   防止 GET 的 等幂 访问 就在URL后面加上 ?+new Date();,[总之

JQuery中ajax不能解析json

问题描述 JQuery中ajax不能解析json Action: @Controller @Scope("prototype") @Namespace("/") @ParentPackage("json-default") public class OaAction extends ActionSupport private String name; private String pass; private String msg; @Action

解决jquery中动态新增的元素节点无法触发事件问题的两种方法_jquery

比如做一个ajax读取留言列表的时候,每条留言后面有个回复按钮,class为"reply",如果你用的是$(".reply").click(function(){ //do something... }),想必后面通过ajax加载进来的列表中的回复按钮,点击事件会失效. 其实最简单的方法就是直接在标签中写onclick="",但是这样写其实是有点low的,最好的方式还是通过给类名绑定一个click事件. 解决jquery中动态新增的元素节点无法触

JQuery中$.ajax()方法参数详解及应用

 JQuery中$.ajax()方法想必大家并不陌生吧,在本文将为大家介绍下其参数及应用示例,感兴趣的朋友不要错过 url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址.    type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和    delete也可以使用,但仅部分浏览器支持.    timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的

jQuery中Ajax的get、post等方法详解

 前面我们讲述了jQuery中ajax的load()方法,小伙伴们反应非常好,今天我们就来讲解下jQuery中Ajax的get.post等方法,希望大家同样能够喜欢.     load()方法通常用来从Web服务器上获取静态的数据文件,然而这并不能体现ajax的全部价值. 在项目中,如果需要传递一些参数给服务器中的页面,那么可以使用$.get()或者$.post()方法(或者是$.ajax()方法) $.get()方法使用GET方式来进行异步请求.结构为:$.get(url [, data] [

解决jquery中美元符号命名冲突问题

 在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,下面为大家介绍下如何解决jquery中美元符号命名冲突问题 在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$('#msg')等同于JQuery('#msg') 的写法.然而,当我们引入多个js库后,在另外一个js库中也定义了$符号的话,那么我们在使用$符号时就发生了冲突.下面以引入两个库文件 jquery.js和prototype.js为例来进行说明.   

Jquery中ajax方法data参数的用法小结

 本篇文章主要是对Jquery中ajax方法data参数的用法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助  代码如下: $.ajax({    type: "POST",    url: "some.php",    data: "name=John&location=Boston", //第一种方式传参   // data: {name:"John",location:"Boston&qu

jquery中ajax使用error调试错误的方法

 这篇文章主要介绍了jquery中ajax使用error调试错误的方法,实例分析了Ajax的使用方法与error函数调试错误的技巧,需要的朋友可以参考下     本文实例讲述了jquery中ajax使用error调试错误的方法.分享给大家供大家参考.具体分析如下: JQuery使我们在开发Ajax应用程序的时候提高了效率,减少了许多兼容性问题,我们在Ajax项目中,遇到ajax异步获取数据出错怎么办,我们可以通过捕捉error事件来获取出错的信息. jquery中ajax的常用用法类似于: ?

jquery中ajax函数执行顺序问题之如何设置同步

 这篇文章主要介绍了jquery中ajax函数执行顺序问题之如何设置同步,需要的朋友可以参考下 JavaScript code  代码如下: function existProduct(obj){    var productname = escape(obj.val());  $.getJSON("../product/searchProductByName.action",datat,function(data){  var falg;  falg = data[0]['exist