多选框从服务器返回的是数组,要怎么在表单中设置回显

解决方案:可以使用jstl的函数库

步骤:
(1)在jsp引入函数
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
(2)在input标签中添加

<c:if test="${fn:contains(requestScope.emp.hobby,‘sport’)}">checked</c:if>/>判断,其中emp是服务器中域对象request传参时的键,hobby是值emp类中的属性

         <div class="field" style="padding-top:8px;">
            运动 <input   type="checkbox" name="hobby" value="sport"
                        <c:if test="${fn:contains(requestScope.emp.hobby,'sport')}">checked</c:if>/>
            阅读 <input   type="checkbox" name="hobby" value="reader"
                        <c:if test="${fn:contains(requestScope.emp.hobby,'reader')}">checked</c:if>
          />
            写代码 <input   type="checkbox" name="hobby" value="code"
                         <c:if test="${fn:contains(requestScope.emp.hobby,'code')}">checked</c:if>
          />
          </div>


      </div>

服务器中的代码

private void findOne(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        //获取参数
        String eid = request.getParameter("eid");
        System.out.println(eid);
        //调用service处理数据
        EmpService empService=new EmpServiceImpl();
        Emp emp = empService.findEmpById(Integer.valueOf(eid));
        System.out.println("转换成功");
        if(emp!=null){
            //成功,发送到更新页面
            request.setAttribute("emp",emp);
            request.getRequestDispatcher("/updateUser.jsp").forward(request,response);


        }else {
            response.getWriter().write("data is empty");
        }
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值