方法一 //要传递的参数
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()就可解出原始的正确的信息。

分享到:
相关推荐
实例34 数据编码 实例35 简单购物车 第5章 PEAR和正则表达式实例 实例36 PEAR管理器安装及PEAR包常见操作 实例37 HTML QuickForm完成表单验证 实例38 Calendar仓ll建日历 实例39 File Find搜索文件 实例40 ...
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 从模型...
scratch少儿编程逻辑思维游戏源码-减压游戏.zip
少儿编程scratch项目源代码文件案例素材-英勇之鸟.zip
少儿编程scratch项目源代码文件案例素材-羊羊繁殖V2.5.zip
scratch少儿编程逻辑思维游戏源码-加特林混战 多人游戏.zip
少儿编程scratch项目源代码文件案例素材-西装英雄.zip
在使用 R 语言进行科研绘图时,颜色的选择是一件让人特别纠结的事情。本系列文章介绍了 R 语言科研绘图时常用的一些配色。本资源给大家提供了文章对应的 PPT。
scratch少儿编程逻辑思维游戏源码-海洋战争.zip
少儿编程scratch项目源代码文件案例素材-万圣夜惊魂.zip
HarmonyOS安全开发赋能,含有HarmonyOS多个场景的安全策略赋能
平台的服务端和客户端源码 整理出来的的游戏源码
scratch少儿编程逻辑思维游戏源码-街头霸王.zip
少儿编程scratch项目源代码文件案例素材-小船.zip
scratch少儿编程逻辑思维游戏源码-几何冲刺(4).zip
少儿编程scratch项目源代码文件案例素材-消灭病毒大作战.zip
scratch少儿编程逻辑思维游戏源码-功夫猫.zip
scratch少儿编程逻辑思维游戏源码-节奏积木 马里奥.zip
scratch少儿编程逻辑思维游戏源码-可爱的超级马里奥.zip
scratch少儿编程逻辑思维游戏源码-解压.zip