html5 – HTML 5下拉列表和JSF 2.2

前端之家收集整理的这篇文章主要介绍了html5 – HTML 5下拉列表和JSF 2.2前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试发送< select>对JSF托管bean的价值,但我不知道如何做到这一点.
我的代码是:
<select id="cb-frentes" required="required" jsf:value="#{checkstyleBean.frente}">
    <option value=""/>
    <ui:repeat var="frente" value="#{appBean.frentes}">
        <option value="#{frente}" label="#{frente}"/>
    </ui:repeat>
</select>

这是行不通的.当我调用我的action方法时,frente属性的值总是为null.

我该怎么做这个绑定?

解决方法

<选项>默认情况下,element不会被识别为passthrough元素.它没有在 table 8.4 of Java EE tutorial chapter 8.9 ‘HTML5-Friendly Markup’中列出.

您需要明确告诉底层的JSF组件.你可以使用jsfc属性来做到这一点,这在Java EE 7教程中没有提到(可能因为它是Facelets的一部分,视图技术,而不是JSF).

<select id="cb-frentes" required="required" size="1" jsf:value="#{checkstyleBean.frente}">
    <option value="#{null}" jsfc="f:selectItem" />
    <ui:repeat value="#{appBean.frentes}" var="frente" jsfc="f:selectItems">
        <option value="#{frente}">#{frente}</option>
    </ui:repeat>
</select>

请注意,我将第一个选项的值固定为显式#{null},并且我修复了设置选项标签错误方法.此外,我还在< select>中添加了size =“1”,否则它默认呈现为列表框而不是下拉列表.

猜你在找的HTML5相关文章