当验证失败时,防止primefaces数据表选择新行

时间:2015-07-28 08:07:07

标签: jsf-2 primefaces jsf-2.2

我有一个主细节ui,显示了dataTable中的一些项目。如果选择了某个项目,则会在表单中显示详细信息。 如果表单中存在无效数据,我想阻止用户从dataTable中选择新项目。验证错误显示在详细信息方面,并且在验证错误存在时表单不会更新(似乎是一个内置行为)。 不幸的是,我无法阻止用户在dataTable中选择另一行。我试过了:

<p:dataTable ...>               
    <p:ajax event="rowSelect" update="someId" />
    <p:ajax event="rowUnselect" update="someId" oncomplete="if (args &amp;&amp; args.validationFailed) return false;" process=":detialsFormId" />
    ...
</p:dataTable>

但这不起作用。据我所知,oncomplete只有args变量可用。我认为rowSelectrowUnselect都为时已晚。 也许有另一种方法?考虑一个远程命令,它在验证失败时设置t-1选择。但也许还有另一个更好的解决方案?

此致 奥利弗

0 个答案:

没有答案