繁体   English   中英

SPRING form:option "未终止的 <form:option tag"

[英]SPRING form:option "Unterminated <form:option tag"

我是春天的新手

尽管我尝试了</form:option><form:option ..../>但我无法解决这个问题

JSP

<form:select path="status" 
    id="cbo-position-status" class="editable-select">
        <c:forEach items="${statusMap}" var = "stt">
            <form:option  value="<c:out value="${stt.id}"/>" label="<c:out value="${stt.name}"/>"/>

        </c:forEach>
</form:select>

控制器

List<StatusBean> statuses = commonService.getAllStatus(6);
Map<Integer, String> status = new HashMap<Integer, String>();
status.put(statuses.get(0).getId(), statuses.get(0).getName());
model.addAttribute("statusMap", status);

您在双引号内使用双引号 :) 如果它们是嵌套的,则在双引号内使用单引号。

更改如下:

<form:option  value="<c:out value='${stt.id}'/>" label="<c:out value='${stt.name}'/>"/>

让我知道这是否解决。

你可以像下面这样直接映射。

  1. jsp页面

    <form:options items="${user}" itemLabel="tbuser_username" itemValue="tbuser_id"/>
  2. 控制器

    model.addObject("user", projectservice.getUsers());

我希望你理解并改进你的代码。

删除你的

<c:out value='${stt.id}'/>

经过

<form:option> 

并尝试以下示例:

    <c:forEach items="${statusMap}" var = "stt">
        <core:set var="actionValueId" value="${stt.id}"/>
        <core:set var="actionValueName" value="${stt.name}"/>
        <form:option  value="${actionValueId}" label="${actionValueName}"/>
    </c:forEach>

不要在其他 JSP 标签的属性中使用 JSP 标签。 您可以改用var属性。

<c:out value="${stt.id}" var="id"/>
<c:out value="${stt.name}" var="name"/>
<form:option  value="${id}" label="${name}"/>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM