2016-06-26 16 views
0

Wenn der Benutzer Daten auf seiner persönlichen Seite aktualisiert, möchte ich einen Bestätigungsdialog mit einer Passwortabfrage aufrufen, um die Änderungen zu bestätigen.So speichern Sie die Änderungen, indem Sie das Passwort bestätigen

Hier ist meine Bestätigungstaste:

<p:commandButton value="Confirm" update="message" ajax="false" actionListener="#{customerBean.confirmChanges()}"> 
    <p:confirm header="Confirm changes" icon="ui-icon-alert" message="Please enter your password to confirm changes:"/> 
</p:commandButton> 

<p:confirmDialog global="true" showEffect="fade" hideEffect="fade"> 
    <p:commandButton value="Submit" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check"/> 
    <p:commandButton value="Cancel" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close"/> 
    <p:password value="#{customerBean.currentPassword}" required="true" redisplay="true" label="Current Password"/> 
</p:confirmDialog> 

Und hier ist die entsprechende Methode:

public String confirmChanges() { 
    if (currentPassword.equals(customer.getPassword())) { 
     saveCustomer(); 
     logger.info("\nCustomer updating SUCCESS.", " CustomerID:" + customer.getId()); 
     addMessage("Updating Success", "Your information was successfully updated.", SEVERITY_INFO); 
    } 
    addMessage("Updating Error", "Your password is wrong please try again.", SEVERITY_ERROR); 
    currentPassword = null; 
    return null; 
} 

Nun, wenn ich die „Senden“ drücken Sie die Taste erscheint der Dialog aber meine Methode nicht aufrufen .

+0

Haben Sie ein Formular um alles? –

+0

sicher, ich habe eine Form um alles herum. – DimaSan

Antwort

1

http://www.primefaces.org/showcase/ui/overlay/confirmDialog.xhtml

Dialogfeld entsprechen wird für Take verwendet Ja oder Nein aus der Benutzung, wenn Sie von Benutzer nehmen Werte wollen besser Dialogfeld zu verwenden, siehe siehe präsentieren Beispiel

http://www.primefaces.org/showcase/ui/overlay/dialog/loginDemo.xhtml

Dieser Willen dir helfen. Die Verwendung des Dialogfelds ist einfach.

+0

danke, ich werde das zweite Beispiel mit JavaScript versuchen. – DimaSan

+0

@DimaSan, bitte akzeptieren Sie ans, wenn es nützlich ist. –

+0

Ja, dein Vorschlag war wirklich hilfreich und jetzt funktioniert mein Dialog so, wie ich es brauche! – DimaSan

Verwandte Themen