jsp表单传值后在页面中文显示乱码

Posted wumengchao1234

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsp表单传值后在页面中文显示乱码相关的知识,希望对你有一定的参考价值。

主要通过添加以下代码来实现(前提是其他处的编码都设置成了utf-8):

response.setContentType("text/html;charset=utf-8"); 
request.setCharacterEncoding("utf-8");

 本人程序有两个:index.jsp与getinfo.jsp

index.jsp如下,使用复选框传值,传入姓名为中文时显示乱码:

 <body>
    <form action="getinfo.jsp" method=post name=form>
    姓名:<input type="text" name="name">
<p>您熟悉的语言:</p>
<p>
<!-- 供选取语言类型的复选框 -->
<input type="checkbox" name=box value="JSP">Jsp
<input type="checkbox" name=box value="php">Php
<input type="checkbox" name=box value="ASP.NET">ASP.NET
</p>
<input type="submit" name="submit" value="Enter">
</form>
</font>
    <br>
  </body>

 getinfo.jsp如下,接收传过来的值并在页面进行显示:

这里接收传过来的name的变量是textContent。因此需要在它的前面附上文章最开始的两行代码,用以进行格式的限定。要放在name前面才有效

<body>
	<%
	response.setContentType("text/html;charset=utf-8");
 request.setCharacterEncoding("utf-8"); 
	String textContent=request.getParameter("name");

	%>
<br>
<%=textContent%>>
<p>熟悉的语言是:
<%
	String box[]=request.getParameterValues("box");//
	for(int i=0;i<box.length;i++){
		out.println("<li>"+box[i]+"</li>");
	}
	//这个遍历的作用是为了显示勾选的语言
 %>
  </body>

 

以上是关于jsp表单传值后在页面中文显示乱码的主要内容,如果未能解决你的问题,请参考以下文章

怎么解决jsp页面get传值中文乱码问题

如何从jsp页面向后台传值?

jsp与jsp页面之间传值中文,页面显示乱码问题

EasyUI页面跳转后传值出现乱码

jsp页面显示中文为问号的问题(乱码问题)

jsp 页面间传值有几种方式?分别是哪几种?