保持输入字段的值不由ajax请求处理

时间:2012-10-12 15:49:32

标签: ajax jsf jsf-2 input-field preserve

我有一个包含两列表的表单。每行都有一个复选框和一个输入字段。虽然该复选框用于删除特定行,但输入字段用于(大量)编辑值。每个输入字段都使用bean验证。另外我有两个按钮:一个用于'删除',另一个用于'保存'。一切都基于素数。

<h:form>
    <p:dataTable value="#{backingBean.list}" var="entry" id="table">
        <p:column>
            <p:selectBooleanCheckbox value="#{entry.flagDelete}" />
        </p:column>

        <p:column>
            <p:inputText value="#{entry.value}" />
        </p:column>
    </p:dataTable>

    <p:commandButton value="save" actionListener="#{backingBean.save}" process="table @this" update="table" />

    <p:commandButton value="delete" actionListener="#{backingBean.delete}" process="@([type=checkbox]) @this" update="table" />
</h:form>

('process'等于'执行'和'更新'等于'JSF 2中的'render')

现在应该可以在不验证输入字段的情况下删除所选行。因此,我使用了primfaces ajax选择器(基于jQuery选择器API)来仅选择应该在ajax请求期间处理的复选框。输入字段的值仍会发送到服务器,但不会被处理。

问题是在ajax请求之后重新呈现表。我希望输入字段保留在单击删除按钮之前输入的值(如果用户没有使用保存按钮保存更改)。当这些值被发送到服务器时,这不应该是一个大问题(例如,当验证失败时,我也得到最后输入的值)。但实际上我得到了存储在辅助bean中的值。 有没有关于如何实现这一目标的选择/解决方案?

0 个答案:

没有答案