Jsf和Js一起使用有一种比较高效的做法,那就是使用jsf标签自带的事件属性。
例如表单的输入项验证
<h:form id="form">
<h:outputText value="userName:">
<h:inputText value="#{bean.userName}" id="userName" />
<h:commandButton value="提交" action="#{bean.sumbit}" οnclick="check();"/>
</h:form>
Js中的代码
<script type="text/javascript">
var value = docment.getElementById("form:userName").value;
if(value == null || "" ==value) {
alert("userName is null");
}
</script>
这种方法比较简单而且不会出现未知bug(本人暂时没遇到)。但有一个很大的局限性就是标签必须支持要触发的事件。