0

私はjqueryでいくつかのコードを追加しました.append()

$('#div').append('<div id="windiv">'+
            '<h:commandLink id="cmdbtn">'+
            '<div id="reducebtndiv" class="btn"></div>'+
        '<f:ajax event="click" execute="@form"'+
                'listener="#{screenShotBean.takeScreenshot}" ></f:ajax>'+
                    '</h:commandLink>');  

しかし、commandLink は機能しません。問題は、それを機能させる方法はありますか?また、これについていくつかの理論を知っていることに感謝します。:)

4

1 に答える 1

2

クライアント (ブラウザー) によって実行される JavaScript を使用して追加しているため、commandLinkは機能しません。

JSF ビュー (JSF コンポーネントで作成) は、サーバー側で処理する必要があります。ビューがレンダリングされると、ブラウザーで処理できる適切な HTML 要素が出力されます。JSF コンポーネントは標準の HTML 要素ではないため、ブラウザによって認識されません。

何を達成したいのかを推測するのは難しいですが、いくつかの JSF コンポーネントを動的に追加したい場合は、サーバーに対して AJAX リクエストをトリガーし、それらのコンポーネントを挿入する必要があるビューの部分を再レンダリングする必要があります。 (もちろん HTML として)。

于 2013-02-06T11:25:09.700 に答える