Deaktivieren/aktivieren der Befehlsschaltfläche auf ajax-event
Ich möchte in der Lage sein zu deaktivieren Sie die Befehlsschaltfläche unten, sobald er getroffen wird, und aktivieren Sie diese, sobald die event-listener läuft und msg1 gerendert wird.
<h:commandButton value="Submit">
<f:ajax execute="@form" render="msg1" listener="{bean.method}" />
</h:commandButton>
Wie könnte ich dies tun?
UPDATE: ich habe herausgefunden, dass ich es befestigen kann onclick-Ereignis des commandButton-element selbst zu deaktivieren. Wie kann ich erkennen, die listener-Methode zurückgegeben wurde, so kann ich die Schaltfläche aktivieren, wieder?
- Bitte beachten Sie, dass Sie nicht mit JSP, sondern JSF. Noch mehr, Sie sind wahrscheinlich mit JSP ' s Nachfolger Facelets (die
f:ajax
nicht direkt unterstützt, JSP). Ich bearbeitet den Titel und die Tags. Beachten Sie dies für die Fragen der Zukunft. Erfahren Sie mehr über die Unterschiede finden Sie unter stackoverflow.com/questions/2095397/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnte man es machen, mit Hilfe der
onevent
Attribut<f:ajax>
welche Punkte an eine JavaScript-Funktion, die Griffe der JSF-Ajax-Ereignisse.E. g.:
(beachten Sie, dass ich Feste die falsche EL in
listener
auch)mit diesem JS:
.jsp
oder.xhtml
Dateien?) Sie zunächst tagged die Frage mit JSP, aber dann die<f:ajax>
würde nicht funktionieren überhaupt ohne hacken und anderes.onevent
handler am frühen JSF-Versionen schon, auf jeden Fall auch mit Mojarra 2.1.1. Vielleicht ist Ihr JS-code hat nur einen syntax-Fehler. Was genau hast du Bearbeiten aus meiner Antwort? Was genau macht der Browser-JS-parser/Konsole sagen?<![CDATA[
auftext/html
Antworten. Entweder entfernen Sie es komplett aus (das Skript enthält keine zu-sein-Escape-XML-Sonderzeichen), oder kommentieren Sie den CDATA-start-und end-Zeilen entfernt, die durch//
oder -besser!- setzen Sie einfach JS-code in seine eigene.js
- Datei.Wenn Sie richfaces, das a4j:commandButton hat das Attribut status, die dies verhindern.