AJAX传输乱码解决办法
来源:互联网 发布:大数据技术包括哪些 编辑:程序博客网 时间:2024/05/11 15:50
页面用AJAX传递数据时
- function login(uname,pwd) {
- var XMLHttpRequestObject = false;
- if(window.XMLHttpRequest) {
- XMLHttpRequestObject = new XMLHttpRequest();
- } else {
- if(window.ActiveXObject) {
- XMLHttpRequestObject = new ActiveObject("Microsoft.XMLHTTP");
- }
- }
- var uri = "uname=" + uname.value + "&pwd=" + pwd.value;
- var url = "login.do?method=login";
- uri = encodeURI(encodeURI(uri));
- if(XMLHttpRequestObject) {
- XMLHttpRequestObject.open("POST",url,true);
- XMLHttpRequestObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
- XMLHttpRequestObject.onreadystatechange = function () {
- if(XMLHttpRequestObject.readyState == 4) {
- if(XMLHttpRequestObject.status == 200) {
- var text = XMLHttpRequestObject.responseText;
- if(text == "error") {
- alert("输入的用户名或密码错误,请重新输入");
- uname.value="";
- pwd.value="";
- }else {
- alert("欢迎回来");
- }
- }
- }
- };
- XMLHttpRequestObject.send(uri);
- }
- }
JAVA Action里处理代码
- public ActionForward login(ActionMapping mapping, ActionForm form,
- HttpServletRequest req, HttpServletResponse res) throws Exception {
- String uname = URLDecoder.decode(req.getParameter("uname"),"UTF-8");
- String pwd = URLDecoder.decode(req.getParameter("pwd"),"UTF-8");
- pwd = md5.getMD5ofStr(pwd);
- UserVo userVo = new UserVo(uname, pwd);
- UserVo findVo = (UserVo)loginServiceImpl.findUserInfo(userVo);
- String message = null;
- if(findVo != null) {
- message = "sucess";
- }else {
- message = "error";
- }
- res.setContentType("text/xml;charset=UTF-8");
- res.setHeader("Cache-Control", "no-cache");
- PrintWriter pw = res.getWriter();
- pw.write(message);
- log.info("message==" + message);
- pw.close();
- return null;
- }
uri = encodeURI(encodeURI(uri));这里两次编码是为了解决中文乱码的问题,因为script的编码和java的解码不对应,会导致乱码,所有这里要两次编码
最后在Action里接收数据时一次解码,URLDecoder.decode(req.getParameter("uname"),"UTF-8");这样得到的是正常的正文!
- AJAX传输乱码解决办法
- Xftp 传输中文乱码解决办法
- jquery ajax传输数据时乱码问题
- jQuery Ajax 传输中文乱码解决方案
- ajax异步传输中的乱码问题
- ajax+php中文乱码解决办法
- ajax+php中文乱码解决办法
- ajax+php中文乱码解决办法
- ajax+php中文乱码解决办法
- ajax jQuery中文乱码解决办法
- AJAX返回中文乱码解决办法
- Ajax中文乱码的解决办法
- asp,jquery,ajax中文乱码解决办法
- asp,jquery,ajax中文乱码解决办法
- jsp:ajax传中文乱码解决办法
- asp,jquery,ajax中文乱码解决办法
- ajax js跨域后乱码原因及解决办法
- 牛逼的ajax乱码解决办法。。
- JSON学习总结
- 通过样式表实现固定表头和列(ZZ)
- C语言函数大全
- .NET Framewok 3.5 中 JSON 序列化和反序列化的简单实现
- 固定表头列头Javascript代码
- AJAX传输乱码解决办法
- Oracle重做日志文件管理技巧
- K/3加密控制规则
- linux(redhat)开启telnet,ftp服务
- dwr的json回调详解
- Ext服务器交互技术详解
- 解决Oracle数据库启动监听器不启动或打开出错
- Hibernate性能优化
- ASP中类的入门