如何让 Spring 的 form:option 不忽略我的数据属性?

How do I get Spring's form:option to not ignore my data attributes?

我正在使用 Spring 3.2.11.RELEASE。如何在 form:option 中包含数据属性?我有

<form:select path=“myField” cssClass=“myField”>
                        <form:option value="" label="Select Option” />
                        <c:forEach items="${parentOrgList}" var="org">
                            <form:option value="${org.id}" data-url="${org.urlAsString}">${org.name}</form:option>
                        </c:forEach>                
                    </form:select>

,但是当渲染选项时,忽略了“数据 - url”,并且该选项像这样渲染,因此

<option value="5C898CF6054C49BC8B0DE3C4FDE795CC">My option</option>

如何获取我的数据属性?

据我所知,spring 形式的 tld 选项标签中没有这样的属性。 "Appendix H. spring-form.tld - Option tag"

如果你真的需要它,你可以继承 org.springframework.web.servlet.tags.form.OptionTag 来支持这个属性,这样它就可以显示你的方式想要并在一个自定义顶级域名中发布它。

或者在这种情况下,您可以将其作为普通 html 选项标签而不是使用 spring-form tld 标签。

<c:forEach items="${parentOrgList}" var="org">
     <option value="${org.id}" data-url="${org.urlAsString}">${org.name}</option>
</c:forEach>