Javascript 单击onclick属性后的按钮时执行f:setPropertyActionListener

Javascript 单击onclick属性后的按钮时执行f:setPropertyActionListener,javascript,ajax,jsf-2,primefaces,Javascript,Ajax,Jsf 2,Primefaces,在一个页面中,我有一个包含所有用户的datatable,每行包含两个附加列“edit”和“delete”,问题在于botton delete 当用户单击“删除”按钮时,我会向他显示一个带有组件primefaces的确认对话框,如果他单击“确定”,我会运行一个从数据库中删除用户的方法 但问题在于按钮: <p:column> <p:commandButton actionListener="#{utilisateursControlle

在一个页面中,我有一个包含所有用户的datatable,每行包含两个附加列“edit”和“delete”,问题在于botton delete 当用户单击“删除”按钮时,我会向他显示一个带有组件primefaces的确认对话框,如果他单击“确定”,我会运行一个从数据库中删除用户的方法 但问题在于按钮:

 <p:column>
                    <p:commandButton   actionListener="#{utilisateursController.supprimerUser()}" value="Supprimer" onclick="confirmation.show()" type="button" >
                        <f:setPropertyActionListener id="jesusi" value="#{car}" target="#{utilisateursController.u1}" />  
                    </p:commandButton>
                </p:column>            
不会被执行

然后,
UsilizateUrsController.u1
保持为空

你知道吗
提前感谢您

它不会执行,因为您添加了
type=“button”
。把那部分去掉。此外,您应该使用
oncomplete
打开对话框,而不是
onclick
,以便在打开对话框时,所选行已经位于
usilizateUrsController.u1
中。这样,您可以在确认对话框中包含属性(如名称)(如果您想这样做,您必须从按钮更新对话框)。

谢谢Damian,现在它可以工作了,但用户不会从数据表中消失,如果我想让它消失,我必须手动刷新页面,你知道吗谢谢这是managedBean public String suppuser()方法的代码{uh.deleteUsiateur(u1);返回“Usiateurs”;},Usiateurs是xhtml页面。从执行delete方法的对话框中的按钮,你必须更新表
 <f:setPropertyActionListener id="jesusi" value="#{car}" target="#{utilisateursController.u1}" />