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>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM