p:编辑模式

时间:2017-03-16 13:45:26

标签: jsf primefaces

我正在使用primefaces并且有一个有2列的数据表。一列是outputtext,另一列是selectOneMenu。我制作了可编辑的selectOneMenu。实际上这是工作但不正确。 selectItem的默认值显示为null但是它希望它将第一个值显示为默认值。我该怎么做?

    <p:dataTable id="cellEditingTable" var="message"
    value="#{messageTableController.menuList}" paginator="true"
    paginatorPosition="bottom" editable="true" editMode="cell">
        <p:column>
            <p:selectOneMenu id="menu" value="#{messageTableController.selected}"
                style="width:96%" effect="fold" editable="true">
                <f:selectItem itemLabel="#{message.assign}"
                    itemValue="#{message.assign}" />
                <f:selectItem itemLabel="#{message.combo}"
                    itemValue="#{message.combo}" />
            </p:selectOneMenu>
        </p:column>
    </p:dataTable>

我将selectOneMenu的值更改为第一个ItemValue。因此,在运行程序时,首先ItemValue选择所选项作为默认值。

    <p:selectOneMenu id="menu" value="#{message.assign}"
        style="width:97%" editable="true">
        <f:selectItem itemLabel="#{message.assign}"
            itemValue="#{message.assign}" />
        <f:selectItem itemLabel="#{message.combo}"
            itemValue="#{message.combo}" />
    </p:selectOneMenu>

1 个答案:

答案 0 :(得分:0)

将noSelectionOption添加到第一个selectItem

<f:selectItem itemLabel="#{message.assign}"
                    itemValue="#{message.assign}" noSelectionOption="true" />