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 在网络服务器中运行并生成 HTML。网络服务器将其发送到网络浏览器。JavaScript 在网络浏览器中运行,它所看到/理解的只是 HTML。

在浏览器中打开 JSF 页面。右键单击并查看源代码<input type="text">找到由 JSF 生成的 HTML元素<h:inputText>。看它的id属性。它看起来像这样

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

您需要在 JavaScript 中准确使用该 ID。

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

也可以看看:

于 2012-05-29T18:29:17.710 回答