2016-06-08 10 views
0

Ich kann p: bestätigen für eine Schaltfläche, die eine Aktion hat, aber wenn es ein onclick anstelle eines action-Attributs ist, dann Klicken Sie „Ja“ im Dialog tut nichts Irgendwelche Tipps, wie diese Arbeit machenWie man Bestätigungsdialog für onclick = "PF ('dialogWidget'). Hide();

Dies funktioniert.?

  <p:commandButton action="#{customEditorBean.save}" 
       value="Save" rendered="#{customEditorBean.canSaveContent}"> 
       <p:confirm message="Are you sure you want to save the content?" icon="ui-icon-alert" /> 
      </p:commandButton> 

Dies funktioniert nicht:

 <p:commandButton value="Close" onclick="PF('editorWidget').hide();"> 
      <p:confirm message="Do you want to close the editor without saving?" icon="ui-icon-alert" /> 
     </p:commandButton> 
+0

Was ist, wenn Sie onComplete verwenden? –

+0

FYI Wenn sich '' öffnet? Wenn Sie auf den Knopf klicken, den Sie in Ihrer Frage oder mit einem anderen Knopf erwähnt haben? –

+0

@ JaqenH'ghar, versuchte es auch. es bleibt nur, um das komplette warten und ich bekomme unbegrenzte laden-Symbol auf dem Bildschirm. –

Antwort

1

so etwas wie dieses sehen arbeite für dich

<p:confirmDialog message="Are you sure about deleting this record?" 
       widgetVar="deleteConfirm"> 
    <p:commandButton title="GDelYesButton" 
        value="Yes" 
        action="#{yourBean.delete}" 
        oncomplete="PF('deleteConfirm').hide()" 
        update=":growl"/> 
    <p:commandButton title="GDelNoButton" 
        value="No" 
        oncomplete="PF('deleteConfirm').hide()"/> 
</p:confirmDialog> 

Es sollte funktionieren wir verwenden dasselbe in unserer Anwendung auch.

+0

werde ich es später noch versuchen. Vielen Dank. –

+0

Gern geschehen –

+0

Es funktioniert! Wäre es möglich, den Elterndialog auch nach dem Klicken auf "Ja" zu verbergen? :) Vielleicht sollte das eine separate Frage sein, aber nur wundern. Weil mein Bestätigungsdialog erscheint, wenn ich auf "Speichern" in einem Dialogfenster klicke. Wäre praktisch, um den confirmDialog UND den Dialog zu schließen, in dem sich der Save-Button befindet. Prost sowieso! Markierte deine Antwort richtig. –

0

ich etwas ähnliches für den Dialog, ein Objekt zu entfernen, vielleicht können Sie diesen Code interessieren

<h:form id="frmEliminar"> 
     <p:dialog header="Eliminar Caja #{cajaBean.caja.descripcion}" widgetVar="dlgEliminar" modal="true">     
      <h:outputText value="¿Desea eliminar?" /> 
      <p:commandButton value="Si" actionListener="#{cajaBean.eliminar()}" ajax="false" icon="b-ok" /> 
      <p:commandButton value="No" onclick="dlgEliminar.hide();" icon="b-cancel" /> 
     </p:dialog> 
    </h:form>