0

Richfaces 4.xi で JSF2.0 を使用しています jquery を使用して入力 myfield 値を取得しようとしていますか?

<h:outputScript name="jsf.js" library="javax.faces" />
    <h:outputScript name="jquery.js" />

    <h:outputScript target="head">
    $ = jQuery;
    // Then you can use it
    $(document).ready(function() {
    });
</h:outputScript>

<h:inputText id="myfield" value="#{dataTableBean.name}" label="Name Field">

<input type="button" onclick="javascript:myfun()" value="click me" />



<h:outputScript target="head">
    function myfun(){
    alert($('#myfield').val());
    }
 </h:outputScript>
4

1 に答える 1

1

JSF は Web サーバーで実行され、HTML を生成します。Webserver はそれを webbrowser に送信します。JavaScript は Web ブラウザで実行され、表示/理解できるのは HTML のみです。

ブラウザーで JSF ページを開きます。右クリックしてソースを表示します。JSF によって生成された HTML<input type="text">要素を見つけます<h:inputText>。そのid属性を見てください。こんな感じになります

<input type="text" id="formid:myfield" />

JavaScript で正確にその IDを使用する必要があります。

alert($('#formid\\:myfield').val());

以下も参照してください。

于 2012-05-29T18:29:17.710 に答える