表单提交和页面链接 中文显示问题

来源:互联网 发布:iis7 php 页面空白 编辑:程序博客网 时间:2024/05/29 10:17

 表单提交

提交中文表单时,浏览器默认的提交是ISO-8859-1,所以在获得表单信息时,中文提交会乱码;

解决的办法是,在获取表单信息前,先设置request获取信息的编码方式即 request.setCharacterEncoding("gb18030")

如:a.jsp提交到b.jsp

 a.jsp页面

 <form action="b.jsp" method="post"> <input type="text" name="name"> <input type="submit" value="commit">

b.jsp页面

  <%  request.setCharacterEncoding("gb18030");//这一句一定要在获取参数之前写,中间最好不要包含jsp文件  String name = request.getParameter("name");   %>

页面链接:

当通过一个页面,链接到下一个页面时,参数的值是中文的时候,下一个链接的页面经常出现乱码

解决的办法是先通过ISO-8859-1的方式获取参数值,然后在转化成gb18030或者gbk等

如:a.jsp链接到b.jsp

a.jsp:页面

<a href="b.jsp?name=<%="我们" %>">xjz</a>

b.jsp:页面

  <body>  <%  String name = new String(request.getParameter("name").getBytes("ISO-8859-1"),"gb18030");   %>  <%=name %>  </body>