jsp之间传值乱码问题
来源:互联网 发布:广州php招聘 编辑:程序博客网 时间:2024/05/01 17:22
tree.jsp页面:
function myreset(){ var node = zTree.getSelectedNodes()[0]; $.ajax({ type: "GET", url:"upd.jsp", data: "treeId=" +node.id+"&nodeName="+node.name, dataType: "text", success: function(data){ hideRMenu(); } });}
upd.jsp 页面:
<%@ page contentType="text/html; charset=UTF-8" %><%@ page language="java" import="java.util.*, java.sql.*" pageEncoding="utf-8"%><% //连接MySQL数据库 Connection conn = com.zy.test.pojo.Node.getConn(); Statement st = conn.createStatement(); String idno=request.getParameter("treeId"); //中文乱码解决 String name = new String(request.getParameter("nodeName").getBytes("ISO-8859-1"),"UTF-8"); //修改节点名字String sql="update menu set name=? where id=?";ResultSet rs = null;PreparedStatement pstmt = null;try{pstmt = conn.prepareStatement(sql);pstmt.setString(1, name);pstmt.setString(2, idno); pstmt.executeUpdate(); conn.commit();}catch (SQLException e) {e.printStackTrace();} com.zy.test.pojo.Node.closeAll(rs, pstmt, conn); %>
结果在servlet页面中打印是问号,网上查这边是乱码。
解决方法如下:
function myreset(){var node = zTree.getSelectedNodes()[0];<span style="color:#ff0000;"><strong>var name_ = node.name;</strong></span>$.ajax({ type: "POST",url:"upd.jsp",data: "treeId=" +node.id+"&nodeName="+name_,contentType: "application/x-www-form-urlencoded; charset=utf-8", dataType: "text",success: function(data){hideRMenu(); }});}
<%@ page contentType="text/html; charset=UTF-8" %><%@ page language="java" import="java.util.*, java.sql.*" pageEncoding="utf-8"%><% //连接MySQL数据库 Connection conn = com.zy.test.pojo.Node.getConn(); Statement st = conn.createStatement(); String idno=request.getParameter("treeId"); request.setCharacterEncoding("UTF-8"); //中文乱码解决 //String name = new String(request.getParameter("nodeName").getBytes("ISO-8859-1"),"UTF-8"); String name = request.getParameter("nodeName"); //修改节点名字String sql="update menu set name=? where id=?";ResultSet rs = null;PreparedStatement pstmt = null;try{pstmt = conn.prepareStatement(sql);pstmt.setString(1, name);pstmt.setString(2, idno); pstmt.executeUpdate(); conn.commit();}catch (SQLException e) {e.printStackTrace();} com.zy.test.pojo.Node.closeAll(rs, pstmt, conn); %>
该了三点:
1、get改为post
2、增加contentType: "application/x-www-form-urlencoded; charset=utf-8", 代码段
3、servlet中去掉String name = new String(request.getParameter("nodeName").getBytes("ISO-8859-1"),"UTF-8")改为request.setCharacterEncoding("UTF-8");
4、容易忽略的一点,js中直接把name获取出来,然后在赋值,而不是直接取数,标红的部分
问题解决。
0 0
- jsp之间传值乱码问题
- jsp与struts2之间传值乱码问题的处理
- 解决Extjs传参到action中文乱码和jsp之间传值的中文乱码问题
- jsp页面之间传值乱码问题解决
- jsp页面之间跳转传参及中文乱码问题
- 解决jsp页面之间,jsp和后台之间传参中文乱码问题
- JSP,servlet和数据库之间传值出现乱码的问题
- jsp 之间参数传递乱码问题
- jsp 传参乱码 Struts2中action之间传参中文乱码的问题
- jsp乱码问题 URL传值乱码问题
- 关于jsp页面之间传值的中文乱码总结
- 关于jsp页面之间传值的中文乱码总结
- jsp和Servlet之间传值出现乱码的解决方案
- jsp和Servlet之间传值出现乱码的解决方案
- jsp和Servlet之间传值出现乱码的解决方案
- jsp和servlet之间传值问题
- Ajax和JSP传值乱码问题
- 解决jsp页面传值乱码问题
- 监听器(观察者模式)过滤器 拦截器
- Hibernate总结------对象的三种状态
- PHP程序员成长路线
- PostgreSQL:“ FATAL: requested WAL segment00800002A0 has already been removed”
- 剁椒鱼头
- jsp之间传值乱码问题
- RecyclerView使用(二)多种Item布局、添加点击事件
- CRC校验
- Objective-C Runtime 运行时之四:Method Swizzling
- Intent:从一个Activity到另一个Activity
- # Apache Hadoop Yarn: Yet Another Resource Negotiator论文解读
- Word关于目录和页码的使用记录
- SVN 管理 Android 项目
- 在Struts2中实现Web系统的初始化工作