一些html标记将“give”属性的“any”值解释为“true”->选项标记。

我经常会做这样的事情:

<c:choose>
   <c:when test="${isSelected}"/>
        <option selected="true">Opt1</option>
    </c:when>
   <c:otherwise/>
        <option>Opt1</option>
   </c:otherwise>
</c:choose>

我知道我可以声明一个自定义来封装这种行为,但是除非我用Java编写代码,否则它也会变得很丑陋。

有没有更聪明的方法可以做到这一点?

最佳答案

一种解决方法是使用自定义标签。

我喜欢JSP2X转换器采用的方法,在WEB-INF/tags文件夹中定义自定义标签,使您可以执行以下操作:

<jspx:element name="option">
    <c:if test="${selected}">
        <jspx:attribute name="selected">selected</jspx:attribute>
    </c:if>
    <jspx:body>Opt1</jspx:body>
</jspx:element>

更为紧凑的方法可能是为执行正确操作的选项专门创建自定义标签,为selected属性采用 boolean 值,如果为true则发出selected =“selected”属性,否则为false。这会更加紧凑:
<jspx:option selected="${selected}">Opt1</option>

关于java - 如何从JSPX输出<option selected ="true">?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1761479/

10-13 01:40