Deaktivieren Sie " <h:commandButton>`, nachdem es angeklickt, aber die Handlung sollte gefeuert werden

Ich habe eine <h:commandButton> in meiner XHTML-Seite. Ich will, dass die Schaltfläche deaktiviert, sobald ich auf die Schaltfläche klicke. Dann sollte der button rufen Sie die Aktion. Mein button wird deaktiviert, als ich erwartet, aber das problem ist, dass die Aktion nicht ausgelöst.

<h:commandButton value="Go" onclick="this.disabled=true" action="#{bean.go()}"/>

Aber wenn ich entfernen Sie die onclick Attribut wird die Aktion ausgelöst.

Oder wenn ich eine <a4j:commandButton> es funktioniert.
A4j-button funktioniert.

<a4j:commandButton value="Go" onclick="this.disabled=true" action="#{bean.go()}"/>

Wie kann ich das deaktivieren einer <h:commandButton> nachdem er geklickt, so dass die Aktion immer noch Feuer?

check this stack Antwort stackoverflow.com/a/2594864/1358004
Ich will, dass die Taste deaktiviert werden, nachdem Sie einmal gedrückt. Ist Ihre Lösung noch anwendbar? Sie meinte onclick="this.disabled = 'disable'"? Es ist auch nicht die Arbeit. 🙁
Warum gehst du nicht setzen einige beliebige Wert als false wenn der button angeklickt wird? Aber bevor nur die Einstellung der Wert, sollten Sie zunächst prüfen, ob diese Wert true bevor Sie fortfahren. So kann es nicht schauen deaktiviert, aber technisch deaktiviert werden.
Gute Idee. Das problem ist, der button sieht immer noch aktiviert.
Wenn Sie die <a4j:commandButton> verwenden, können Sie die oncomplete javascript-Methode, die ausgeführt wird, nachdem die Aktion ausgeführt wurde: <a4j:commandButton value="Go" onclick="this.disabled=true" action="#{bean.go()}" oncomplete="this.disabled=true" />

InformationsquelleAutor prageeth | 2012-10-29

Schreibe einen Kommentar