日期:2014-05-17  浏览次数:20864 次

在jsp页面中,用jstl标签如何获取复选框后边的中文文字?(1、如何获得值;2、如何解决在jsp页面显示时出现的乱码问题)
在index.jsp页面中,用一个form表单:

 <form action="checkbox.jsp" method="post">

           <input value="china" type="checkbox" name="country">
           中国
           <br>

           <input value="english" type="checkbox" name="country">
           英国
           <br>

           <input value="美国" type="checkbox" name="country">
           美国
           <br>

           <input value="法国" type="checkbox" name="country">
           法国
           <br>

           <input value="德国" type="checkbox" name="country">
           德国
           <br>

           <input type="submit">           
  </form>



现在的问题是:
我想在checkbox.jsp页面中,通过jstl标签获得“中国”、“英国”、“美国”、“法国”、“德国”,可是,我用${paramValues.country},获得结果是:

    china
    english
    ??????
    ?3????
    ??·???

1、没有获得字符串“中国”,而得到了字符串“china”
2、如何解决在jsp页面显示时出现的乱码问题

如何解决这2个问题,请告知,谢谢了!分不够,可以加分。




------解决方案--------------------
checkbox.jsp的body内容:要引入<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<body>
  <fmt:requestEncoding value="utf-8" />
  <c:forEach items="${paramValues.country}" var="pic">
   <c:if test="${pic=='china'}">
<c:out value="中国" ></c:out>
</c:if>
<c:if test="${pic=='english'}">
<c:out value="英国" ></c:out>
</c:if>
<c:if test="${pic!='english' && pic!='china'}">
<c:out