ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript を使用して HTML DOM イベントで JSF マネージド Bean を呼び出す方法

JavaScript を使用して HTML DOM イベントで JSF マネージド Bean を呼び出す方法

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-06 02:53:111019ブラウズ

How to Invoke JSF Managed Beans on HTML DOM Events Using JavaScript?

ネイティブ JavaScript を使用した HTML DOM イベントでの JSF マネージド Bean の呼び出し

Web 開発では、クライアントで発生する特定のイベントに基づいてサーバー側のアクションを実行する必要があります。 -側。これは、JavaServer Faces (JSF) でさまざまなアプローチを採用することで実現できます。そのようなアプローチの 1 つは、HTML DOM ロード イベント中に Ajax を使用して JSF マネージド Bean アクション メソッドを呼び出すことです。

JSF 2.3 の

JSF 2.3 以降では、 コンポーネントは直接的な解決策を提供します:

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

このスクリプトはプレーン JavaScript を使用して呼び出すことができます:

commandName();

autorun="true" を設定すると、DOM のロード中にトリガーされます。

PrimeFaces

場合PrimeFaces を利用する場合は、:

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

呼び出しは に似ています:

commandName();

PrimeFaces は AJAX 呼び出しに jQuery を使用します。 JSF ネイティブではありませんjsf.ajax.request().

OmniFaces

2.3 より古い JSF バージョンの場合、OmniFaces は、次と同じ目的を果たす を提供します。 :

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

h:commandScript を o:commandScript に置き換えるだけです。

「隠しフォーム」トリック

別のアプローチには、隠しフォームを利用することが含まれます。でフォームします:

<h:form>

呼び出し:

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

カスタム UIComponent

最後の手段として、UICommand を拡張するカスタム UIComponent を開発して、活用するjsf.ajax.request().

要約すると、これらのアプローチにより、開発者はネイティブ JavaScript を使用して HTML DOM イベントで JSF マネージド Bean を呼び出すことができます。方法の選択は、JSF バージョン、ライブラリの使用法、プロジェクトの制約などの要因によって異なります。

以上がJavaScript を使用して HTML DOM イベントで JSF マネージド Bean を呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。