ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript を使用して HTML DOM イベントから JSF マネージド Bean を呼び出すにはどうすればよいですか?

JavaScript を使用して HTML DOM イベントから JSF マネージド Bean を呼び出すにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-05 14:09:11
オリジナル
814 人が閲覧しました

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

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

JSF で生成された JavaScript を使用すると、jQuery の場合と同様に、HTML DOM イベントに応答してマネージド Bean アクションを実行できます。 document.ready イベント。

オプションマネージド Bean アクションを呼び出すには:

1. h:commandScript (JSF 2.3 )

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

<h:panelGroup>
ログイン後にコピー

JavaScript 呼び出し:

commandName(); // Invoke the action method
ログイン後にコピー
ログイン後にコピー

2. p:remoteCommand (PrimeFaces)

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

<h:panelGroup>
ログイン後にコピー

JavaScript 呼び出し:

commandName(); // Invoke the action method
ログイン後にコピー
ログイン後にコピー

3. o:commandScript (OmniFaces - 古い JSF バージョンで利用可能)**

h:commandScript の例では、h: を o: に置き換えます。

4.隠しフォームのトリック

<h:form>
ログイン後にコピー

JavaScript 呼び出し:

document.getElementById("form:button").onclick(); // Trigger the button click
ログイン後にコピー

5.カスタム UIComponent

UICommand を拡張し、カスタム コンポーネントで jsf.ajax.request() 呼び出しを生成します。

DOM イベント呼び出し:

を呼び出すにはDOM ロード時のマネージド Bean アクションでは、JS を使用してクライアント側でイベントをトリガーします。たとえば、h:commandScript メソッドを使用すると:

$(function () {
    commandName();
});
ログイン後にコピー

隠しフォーム トリックを使用すると、target="body":

<h:outputScript target="body">
    document.getElementById("form:button").onclick();
</h:outputScript>
ログイン後にコピー
を使用して h:outputScript 内に JavaScript 呼び出しを配置し​​ます。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート