Ajax传递中文参数到后台乱码的有效解决方法_AJAX相关

使用Ajax传递中文参数,如果不对参数进行处理的话,传到后台会变成乱码,经测试可以使用如下方法

这里是以jquery.autocomplete插件中获取输入框中的数据传到后台为例:

注意要对中文使用encodeURI编码两次

复制代码 代码如下:

extraParams: {q:function(){return encodeURI(encodeURI($('#keyword').val()))}}

这里同样也要解码两次

复制代码 代码如下:

String key = URLDecoder.decode(URLDecoder.decode(q,"UTF-8"),"tuf-8");

时间: 2024-10-30 09:39:15

Ajax传递中文参数到后台乱码的有效解决方法_AJAX相关的相关文章

Ajax传递中文参数到后台乱码的有效解决方法

使用Ajax传递中文参数,如果不对参数进行处理的话,传到后台会变成乱码,经测试可以使用如下方法 这里是以jquery.autocomplete插件中获取输入框中的数据传到后台为例: 注意要对中文使用encodeURI编码两次 复制代码 代码如下: extraParams: {q:function(){return encodeURI(encodeURI($('#keyword').val()))}} 这里同样也要解码两次 复制代码 代码如下: String key = URLDecoder.de

IE下Ajax提交乱码的快速解决方法_AJAX相关

哈哈,试了这么多还是encodeURIComponent管用啊!!!! 在汉字的位置加个保护措施:encodeURIComponent(parentid) function loadCity(parentid) { var city = '${hotel.city}'; $.ajax({ url: './listCity.jspx?prov='+ encodeURIComponent(parentid), type: 'GET', dataType: 'JSON', timeout: 5000,

ajax下载smartupload的内容无法显示汉字的解决方法_AJAX相关

复制代码 代码如下: 服务器端: public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{ req.setCharacterEncoding("GBK"); // 新建一个SmartUpload对象 SmartUpload su = new SmartUpload(); su.initialize(this.getServletCon

jquery ajax传递中文参数乱码问题及解决方法说明

 本篇文章主要是对jquery ajax传递中文参数乱码问题及解决方法进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 jQuery传递中文参数乱码,原因是默认的传递方式没有采用UTF-8,所有我们可以在传递参数的时候对参数进行编码,然后再操作,代码如下,红色的代码为传递的参数,已标注    代码如下: smsubmitclick = function(){    $(document).ready(function(){        var name = $("#txt_name&q

javaweb-jsp页面通过href向servlet类页面传递中文参数时出现乱码了怎么办?

问题描述 jsp页面通过href向servlet类页面传递中文参数时出现乱码了怎么办? jsp页面通过href向servlet类页面传递中文参数时出现乱码了怎么办?我在doGet方法中设置了response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8");所有的编码方式都是utf-8

JS URL传递中文参数时出现乱码的处理

原文:JS URL传递中文参数时出现乱码的处理      在浏览器中显示的地址是这样的:   但是按F12调试的时候的地址却变化掉了:               这个肯定是是因为浏览器对url路径默认编码了.这个问题是在我们去取值的时候,得到的就是后面那一大串稀奇古怪的东西.得不到我们想要的值.怎么办呢?这里写出来的只是自己的解决方法,也许不能通用,跟大家分享下,有更好的方法,告我一声.      //得到url中的值 function request(paras){ var url = lo

jquery ajax传递中文参数乱码问题及解决方法说明_jquery

jQuery传递中文参数乱码,原因是默认的传递方式没有采用UTF-8,所有我们可以在传递参数的时候对参数进行编码,然后再操作,代码如下,红色的代码为传递的参数,已标注 复制代码 代码如下: smsubmitclick = function(){   $(document).ready(function(){       var name = $("#txt_name").val();       var type = $("#seltype option:selected&q

真正的JQuery.ajax传递中文参数的解决方法_jquery

本人最近也遇到了需要传递中文参数的问题.在网上搜索一下,复制粘贴发的到处都是的"终极""解决方案"无非就是escape(str)来转码,然后在服务端还要写个方法再编辑一次,或用System.Text.Encoding下的方法来换来换去. 我很久以前一直在使用Prototype框架.在.net-GB2312或jsp-utf8下都使用过,从来没遇到有字符编码的问题.于是将Prototype和JQuery代码都下载下来打开研究原因.具体结果如下 不同之处在于JQuery默

JQuery.ajax传递中文参数的解决方法 推荐_jquery

本人最近也遇到了需要传递中文参数的问题.在网上搜索一下,复制粘贴发的到处都是的"终极""解决方案"无非就是escape(str)来转码,然后在服务端还要写个方法再编辑一次,或用System.Text.Encoding下的方法来换来换去. 我很久以前一直在使用Prototype框架.在.net-GB2312或jsp-utf8下都使用过,从来没遇到有字符编码的问题.于是将Prototype和JQuery代码都下载下来打开研究原因. 不同之处在于JQuery默认的cont