我正在使用带有Richfaces 4.x的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>
答案 0 :(得分:1)
JSF在webserver中运行并生成HTML。 Web服务器将其发送到webbrowser。 JavaScript在webbrowser中运行,它看到/理解的只是HTML。
在浏览器中打开JSF页面。右键单击并查看源。找到由JSF <input type="text">
生成的HTML <h:inputText>
元素。查看其id
属性。它看起来像这样
<input type="text" id="formid:myfield" />
您需要在JavaScript中使用完全该ID。
alert($('#formid\\:myfield').val());