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

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

Linda Hamilton
Linda HamiltonOriginal
2024-12-07 11:53:13857Durchsuche

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

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

Um JSF-verwaltete Bean-Aktionsmethoden über AJAX während HTML-DOM-Ladeereignissen auszuführen , natives JSF bietet mehrere Mechanismen:

1.

Diese Komponente (verfügbar in JSF 2.3 und höher) generiert eine AJAX-Anfrage, wenn auf ihren Namen in JavaScript verwiesen wird:

commandName();

2 . (PrimeFaces)

Für PrimeFaces-Benutzer bietet diese Komponente ähnliche Funktionen:

commandName();

3. (OmniFaces)

OmniFaces stellt diese Komponente als Alternative zu bereit und ermöglicht die Verwendung in älteren JSF 2.x-Versionen:

4. „Verstecktes Formular“-Trick

Diese Technik erstellt ein verstecktes Formular mit einer AJAX-Schaltfläche:

<h:form>

Lösen Sie die Schaltfläche mit JavaScript aus:

document.getElementById("form:button").onclick();

5. Benutzerdefinierte UIComponent

Entwickler können UICommand erweitern, um benutzerdefinierte Komponenten zu erstellen, die JSF-AJAX-Anfragen generieren.

Parameter und Ergebnisse

Parameter können übergeben werden über Eingabefelder oder HTML-Formulardaten an den Server übertragen. Die JSF-Backing-Beans können über die Anforderungsparameterzuordnung darauf zugreifen:

String name1 = externalContext.getRequestParameterMap().get("name1");

Ergebnisse vom Server können in den angegebenen Zielbereichen gerendert werden, wie durch das Update-Attribut jeder Komponente definiert.

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

Stellungnahme:
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