Heim > Web-Frontend > js-Tutorial > Wie kann ich JSF-verwaltete Beans aus HTML-DOM-Ereignissen mithilfe von JavaScript aufrufen?

Wie kann ich JSF-verwaltete Beans aus HTML-DOM-Ereignissen mithilfe von JavaScript aufrufen?

Susan Sarandon
Freigeben: 2024-12-05 14:09:11
Original
812 Leute haben es durchsucht

How Can I Call JSF Managed Beans from HTML DOM Events Using JavaScript?

Aufrufen von JSF-verwalteten Beans aus HTML-DOM-Ereignissen mit nativem JavaScript

Mit dem von JSF generierten JavaScript können Sie verwaltete Bean-Aktionen als Reaktion auf HTML-DOM-Ereignisse ausführen, ähnlich wie bei jQuery document.ready-Ereignis.

Optionen zum Aufrufen verwalteter Beans Aktionen:

1. h:commandScript (JSF 2.3)

<h:form>
    <h:commandScript name="commandName" action="#{bean.action}" render=":results" />
</h:form>

<h:panelGroup>
Nach dem Login kopieren

JavaScript-Aufruf:

commandName(); // Invoke the action method
Nach dem Login kopieren
Nach dem Login kopieren

2. p:remoteCommand (PrimeFaces)

<h:form>
    <p:remoteCommand name="commandName" action="#{bean.action}" update=":results" />
</h:form>

<h:panelGroup>
Nach dem Login kopieren

JavaScript-Aufruf:

commandName(); // Invoke the action method
Nach dem Login kopieren
Nach dem Login kopieren

3. o:commandScript (OmniFaces – verfügbar in älteren JSF-Versionen)**

Ersetzen Sie h: durch o: im h:commandScript-Beispiel.

4. Trick mit versteckten Formularen

<h:form>
Nach dem Login kopieren

JavaScript-Aufruf:

document.getElementById("form:button").onclick(); // Trigger the button click
Nach dem Login kopieren

5. Benutzerdefinierte UIComponent

Erweitern Sie UICommand und generieren Sie den Aufruf jsf.ajax.request() in der benutzerdefinierten Komponente.

DOM-Ereignisaufruf:

Zum Aufrufen Verwenden Sie für die verwaltete Bean-Aktion beim Laden des DOM JS, um das Ereignis auf der Clientseite auszulösen. Zum Beispiel mit der h:commandScript-Methode:

$(function () {
    commandName();
});
Nach dem Login kopieren

Platzieren Sie mit dem Trick mit versteckten Formularen den JavaScript-Aufruf in einem h:outputScript mit target="body":

<h:outputScript target="body">
    document.getElementById("form:button").onclick();
</h:outputScript>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich JSF-verwaltete Beans aus HTML-DOM-Ereignissen mithilfe von JavaScript aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage