我有一个按钮,我们称之为“Button1”:
<p:commandButton icon="ui-icon-document"
value="Button1"
onstart="#{bean.populateDependancies(item)}"
update="myDialog"
oncomplete="dialogWidget.show();">
</p:commandButton>
此Button1
应该打开dialog
,但之前打开它我希望它填充>中的主要选项列表的目标带有一些值的对话框(此作业由方法populateDependancies(item)
完成)。
但实际上,当我关闭对话框并且点击 populateDependancies(item)
的primefaces的validateEdition按钮时,调用方法cellEditor
(甚至是取消按钮)(注意:Button1
放在可编辑数据表的列中。)
我希望我能清楚地解释这个问题......如果有什么不清楚,请告诉我
这是我的页面结构,也许它可以帮助:
这是我的方法:
public void populateDependancies(Release release) {
if (release != null) {
if (rfcsDualListModel.getTarget() != null || !rfcsDualListModel.getTarget().isEmpty()) {
rfcsDualListModel.setTarget(null);
}
List<Rfc> rfcDejaAssocies = release.getRfcs();
rfcsDualListModel.setTarget(rfcDejaAssocies);
}
}
答案 0 :(得分:1)
onstart
执行javascript代码,就像oncomplete
一样。 #{bean.populateDependancies(item)}
必须是action
或actionListener
属性的值。
编辑:此外,必须使用process="@this"
属性和值,以便不提交整个表单。
答案 1 :(得分:0)
使用commandButton的actionListener
和process="@this"
属性解决了问题..但老实说,我不知道为什么只有添加process="@this"
才有效。如果有人知道理由..请告诉我。谢谢大家。