使用<c:if>标记嵌套spring form标记</c:if>

时间:2013-04-03 13:53:37

标签: forms tags

我目前的jsp包含一些像这样的无线电按钮:

<input type="radio_1" value="1" id="radio_1"
<c:if test="${account!=1}">disabled</c:if> 
<c:if test="${account==1 && radio_1=='1'}">checked</c:if>/>

我需要将其转换为spring框架的表单标签,以便我可以将其绑定到模型bean。这样做的目的是将错误消息绑定到字段。所以我将它转换为spring form标签 像这样:

<form:radiobutton path="radio_1" value="1" 
<c:if test="${account!=1}">disabled</c:if>
<c:if test="${account==1 && radio_1=='1'}">checked</c:if>/>

但似乎我们无法嵌套像HTML标签这样的表单标签所以我收到错误消息“unterminated tag”。 但我需要附加那些标签,不希望更改原始功能。 我们有其他替代方案吗?

1 个答案:

答案 0 :(得分:2)

而不是使用c:if仅在disable属性中,也可以在radiobutton标记处使用它

<c:if test="${account!=1}">
  <form:radiobutton path="radio_1" value="1" disabled/>
</c:if>

<c:if test="${account==1 && radio_1=='1'}">
  <form:radiobutton path="radio_1" value="1" checked/>
</c:if>

<c:if test="${account==1 && radio_1!='1'}">
 <form:radiobutton path="radio_1" value="1" />
</c:if>

<c:choose>
  <c:when test="${account!=1}">
      <form:radiobutton path="radio_1" value="1" disabled/>            
  </c:when>
  <c:when test="${account==1 && radio_1=='1'}">
      <form:radiobutton path="radio_1" value="1" checked/>    
  </c:when>
  <c:otherwise>
      <form:radiobutton path="radio_1" value="1" />                          
  </c:otherwise>
</c:choose>