`
sweader
  • 浏览: 22460 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

aiax中发送、获取数据的编码问题

阅读更多
方法一
//要传递的参数
   var queryString = "firstName=" + firstName + "&lastName=" + lastName
                          + "&birthday=" + birthday;    function  

//GET方式提交    doRequestUsingGET() {             createXMLHttpRequest();            var url = "GetAndPostExample?" + queryString+ "&timeStamp="                              + new Date().getTime();             xmlHttp.onreadystatechange = handleStateChange;             xmlHttp.open("GET", url, true);             xmlHttp.send(null);    }       //POST方式提交    function doRequestUsingPOST() {             createXMLHttpRequest();            var url = "GetAndPostExample?timeStamp=" + new Date().getTime();             xmlHttp.open("POST", url, true);             xmlHttp.onreadystatechange = handleStateChange;             xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");             xmlHttp.send(queryString);    }  
当在servlet接收参数时,必须要这样:
//当用POST方法时,一定要设置成utf-8,否则乱码
String firstName = new String(request.getParameter("firstName").getBytes("ISO-8859-1"), "utf-8");

//当用GET方法时,要设置成GB2312,否则乱码
String lastName = new String(request.getParameter("lastName").getBytes("ISO-8859-1"), "GB2312");

方法二
使用GET方式提交数据的时候,中文问题很好解决,setRequestHeader("Content-Type","text/html; encoding=gb18030")就可以了。

使用POST:
表单页面中的js使用如下部分
//打开连接
xmlhttp.open("post", "/shake/ajaxAdd.jsp", false);
//当方法为post时需要如下设置http头
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
//发送数据
var post="title="+title+"&content="+content+"&leibie="+leibie;
post = encodeURI(post);
post = encodeURI(post);  
xmlhttp.send(post);

接收处理页面中
String title=request.getParameter("title");
String content=request.getParameter("content");
String leibie=request.getParameter("leibie");
title = java.net.URLDecoder.decode(title, "UTF-8");
content = java.net.URLDecoder.decode(content, "UTF-8");
leibie = java.net.URLDecoder.decode(leibie, "UTF-8");

当调用request.getParameter()函数时,会自动进行一次URI的解码过程,调用时内置的解码过程会导致乱码出现。而URI编码两次后,request.getParameter()函数得到的是原信息URI编码一次的内容。再用可控的解码函数 java.net.URLDecoder.decode()就可解出原始的正确的信息。
分享到:
评论

相关推荐

    JQuery全集,aiax流行框架

    学习Jquery全集,内含Jquery文件,Jquery手册及源码,Jquery实例,Jquery组件

    在Java中使用Aiax技术实现自动完成功能

    用户在文本框中输入想要查询的文本或一部分。数据库会根据输入的内容,在输入框的下方列表框显示出与文本相关的一些关键字的搜索结果。用户通过移动键盘的上,下方向键或者通过鼠标点击选择关键字。然后进行搜索。这些...

    IW和ajax.pdf

    intraweb 和 aiax 介绍与方法

    疯狂Aiax讲义

    李刚 疯狂Aiax讲义,另一附件4~5仍在.欢迎下载.学习java的好东西

    jQuery json动态数据表格分页代码

    jquer +php +aiax 分页,数据动态读取,数据量大的情况下可以有效的优化分页

    PHP+Ajax网站开发典型实例

    实例34 数据编码 实例35 简单购物车 第5章 PEAR和正则表达式实例 实例36 PEAR管理器安装及PEAR包常见操作 实例37 HTML QuickForm完成表单验证 实例38 Calendar仓ll建日历 实例39 File Find搜索文件 实例40 ...

    本程序使用jquery的aiax技术,使 dtree以 json的方式读取目录树,后台语言使用的是 php

    1.本程序使用jquery的aiax技术,使 dtree以 json的方式读取目录树,后台语言使用的是 php 2.你可以不使用jquery的aiax,js 的一样,后台你也可以使用asp,jsp等语言,看个人实际

    【卷一/共两卷】AJAX实战pdf高清版90M

    4.3 Aiax应用中的控制器 4.3.1传统的JavaScript事件处理函数 4.3.2 W3C事件模型 4.3.3 在JavaScript中实现灵活的事件模型 4.4 Ajax应用中的模型 4.4.1 使用JavaSctjpt为业务领域建模 4.4.2 与服务器交互 4.5 从模型...

    深入浅出JavaScript(中文版)

    《深入浅出JavaScript(中文版)》覆盖了所有的javascript基本知识,从基本网络编程技巧,如变量、函数和循环语句,到高级一些的专题,如表单验证、dom操作、客户端对象、脚本程序调试——甚至是aiax!赶快做好准备……...

    jQuery Bootstrap分页插件.zip

    jQuery自定义组件标签复选代码是一款基于jQuery的一个可以自定义颜色,页数的使用bootstrap的分页插件。

    javascript实现层上下移动

    脚本自动生成DIV层对象,通过改变位置移动层,通过overflow对超出层进行隐藏。

    深入浅出JavaScript (中文版) (Michael Morrison) PDF扫描版

    《深入浅出javascript(中文版)》覆盖了所有的java script基本知识,从基本网络编程技巧,如变量、函数和循环语句,到高级一些的专题,如表单验证、dom操作、客户端对象、脚本程序调试——甚至是aiax!赶快做好准备...

    Beginning XML 4th

    《XML入门经典(第4版)》能帮助您快速从XML的基础知识提升到更为高级的编程技术中,您将深入钻研XML和数据库的使用艺术,包括如何查询XML信息、检索XML数据和创建新的XML文档等等。此外,您还将学会如何在Web上发布...

    XML入门经典(第4版).part4.rar

    《XML入门经典(第4版)》能帮助您快速从XML的基础知识提升到更为高级的编程技术中,您将深入钻研XML和数据库的使用艺术,包括如何查询XML信息、检索XML数据和创建新的XML文档等等。此外,您还将学会如何在Web上发布...

    XML入门经典(第4版).part3.rar

    《XML入门经典(第4版)》能帮助您快速从XML的基础知识提升到更为高级的编程技术中,您将深入钻研XML和数据库的使用艺术,包括如何查询XML信息、检索XML数据和创建新的XML文档等等。此外,您还将学会如何在Web上发布...

    XML入门经典(第4版).part2.rar

    《XML入门经典(第4版)》能帮助您快速从XML的基础知识提升到更为高级的编程技术中,您将深入钻研XML和数据库的使用艺术,包括如何查询XML信息、检索XML数据和创建新的XML文档等等。此外,您还将学会如何在Web上发布...

    【卷2/共两卷】AJAX实战pdf高清版90M

    具体目录见卷一 第一部分 重新思考Web应用 第1章 一种新的Web设计方法 1.1 为什么需要Ajax富客户端? 1.1.1 比较用户体验 1.1.2 网络延迟 1.1.3 异步交互 1.1.4 独占或瞬态的使用...1.2.2 服务器交付的是数据而不是内容

    XML入门经典(第4版).part1.rar

    《XML入门经典(第4版)》能帮助您快速从XML的基础知识提升到更为高级的编程技术中,您将深入钻研XML和数据库的使用艺术,包括如何查询XML信息、检索XML数据和创建新的XML文档等等。此外,您还将学会如何在Web上发布...

    CSS网站布局实录 (第二版)PDF版

    A.2 我来说点儿Aiax的事儿 A.3 Web标准的思考 A.4 闪客帝国网站重构访谈 附录B 相关资源及术语表 B.1 相关网站 B.2 相关书籍 B.3 相关工具 B.4 术语表 《CSS网站布局实录:基于Web标准的网站设计指南(第2版)》编辑...

    asp.net 平台下基于Ajax的MVC构架模式

    主要阐述了MVC模式和Aiax的基本概念,并且介绍了在ASP.NET平台下基于Aiax的具有MVC模式的Web网站的 式 设计与实现。

Global site tag (gtag.js) - Google Analytics