Primefaces数据表不会通过单击选择

时间:2014-06-16 13:25:14

标签: jsf primefaces

我有一个带有多选项的数据表。

        <p:dataTable id="RecipientTable" var="Recipient"
        value="#{mainPageBean.recipients}"
        selection="#{mainPageBean.selectedRecipients}"
        rowKey="#{Recipient.recipientID}">
        <p:ajax event="rowSelectCheckbox"
            listener="#{mainPageBean.recipientSelect}" update=":form:DebitorTable" />
        <p:ajax event="rowSelect" listener="#{mainPageBean.switchOtherTable}"
            update=":form:DebitorTable" />
        <f:facet name="header">Liste aller Recipients</f:facet>

        <p:column selectionMode="multiple" />
        <p:column>
            <f:facet name="header">
                <h:outputText value="RecipientID" />
            </f:facet>
            <h:outputText value="#{Recipient.recipientID}" />
        </p:column>

        <p:column>
            <f:facet name="header">
                <h:outputText value="Value1" />
            </f:facet>
            <h:outputText value="#{Recipient.value1}" />
        </p:column>

        <p:column>
            <f:facet name="header">
                <h:outputText value="Value2" />
            </f:facet>
            <h:outputText value="#{Recipient.value2}" />
        </p:column>

        <p:column>
            <f:facet name="header">
                <h:outputText value="Ein Debitor hat Inkassoflag" />
            </f:facet>
            <h:outputText value="#{Recipient.debitorIncasso}" />
        </p:column>
    </p:dataTable>

我的问题是,我只想在你点击复选框时选择一个值。单击该行时,只应启动ajax事件。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我不用。我用

       <p:column>
            <p:selectBooleanCheckbox value="#{Recipient.selected}">
                <p:ajax event="change" listener="#{mainPageBean.selectRecipient}"
                    update=":form:confirmDialog" />
            </p:selectBooleanCheckbox>
            <f:facet name="header">
                <p:selectBooleanCheckbox>
                    <p:ajax event="change" update="RecipientTable,:form:confirmDialog"
                        listener="#{mainPageBean.selectAllRecipients}" />
                </p:selectBooleanCheckbox>
            </f:facet>
        </p:column>

这个简单创建一个自己的复选框。现在我可以将表的selectionmode设置为single并将ajax事件绑定到它。