数据表上的行选择事件与部分提交不工作primefaces

时间:2015-01-22 16:47:58

标签: jsf primefaces

我有具有输入元素集的素面形式,最后按钮让我们称之为i_BTN,这不是提交按钮,数据表让我们称之为f_DT。

我的逻辑是填充一组元素,让我们调用这些元素: inpt_1和inpt_2并非所有元素,当点击i_BTN时,它会在f_DT中添加新记录。

我在i_BTN中使用部分提交来表示我没有提交所有字段的原因。 Button完成任务并在f_DT中添加新记录 我的大不了的是: 当我在f_DT中添加ajax以捕获rowSelect时,SelectEvent对象传递为null值。 完全提交SelectEvent传递值。

<h:form id="generalForm">
<p:inputText label="full_submit_input_one" id="inpt1"/>
<p:inputText label="full_submit_input_two" id="inpt2"/>

<h:panelGrid columns="4" id="partial_submit_Panel">
    <p:inputText label="partial_submit_input_one" id="inpt3"/>
    <p:inputText label="partial_submit_input_two" id="inpt4"/>
</h:panelGrid>

<p:dataTable id="itemDT" var="item"  value="#{itemView.items}" selectionMode="multiple"
        selection="#{itemView.selectedItems}" 
        rowKey="#{fee.Id}">
    <p:ajax event="rowSelect"
            listener="#{dtFeesView.onRowSelect}" />
    <p:column headerText="Input three">
        <h:outputText value="#{fee.inpt3}" />
    </p:column>

    <p:column headerText="Input four">
        <h:outputText value="#{fee.inpt4}" />
    </p:column>
</p:dataTable>

<p:commandButton value="Full Submit"  actionListener="#{itemView.add}"/>
<p:commandButton value="Partial Submit"  actionListener="#{itemView.insertRecord}" process=":generalForm:partial_submit_Panel"/>

@ManagedBean(name="itemView")
@ViewScoped
public class ItemView{
    private ItemModel selectedItems[];
    // getters and setters for selectedItems
    private List<ItemModel> items;
    // getters and setters for items

    public void add(){
        // add item to i.e database
    }

    public void insertRecord(){
        // add itemModels  to items list 
    }
    public void onRowSelect(SelectEvent event) {
        ItemModel model =(ItemModel)event.getObject();
        // model is null in case of process with value :generalForm:partial_submit_Panel
        //model is not null in case of process with value generalForm "submit full form"
    }
}

请帮忙。 问候。

0 个答案:

没有答案