我有一个基于 JSF 2.1 和 Primefaces 的应用程序。我需要使用 Jquery 发出 ajax 请求并更新页面状态。这里的代码:
<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:ui="http://java.sun.com/jsf/facelets">
<f:view>
<h:head>
</h:head>
<h:body>
<h:outputText id="counterViewer" value="#{dataController.outputMessage}"
styleClass="counter-viewer" />
<h:form id="dataForm" >
<h:outputScript>
jQuery(document).ready(function() {
jQuery(document).on("count", function(event, count) {
alert( "Count: " + count );
document.getElementById("#{view.getClientId(facesContext)}:counterViewer").innerText = count;
var hiddenCountValue = document.getElementById("#{view.getClientId(facesContext)}:dataForm:hiddenCountValue");
hiddenCountValue.value = count;
jsf.ajax.request(hiddenCountValue, 'change');
});
});
</h:outputScript>
<h:inputHidden id="hiddenCountValue" value="#{dataController.outputMessage}"/>
</h:form>
</h:body>
</f:view>
</html>
当我使用 Chrome 时一切正常,但在 firefox 22 上 jsf.ajax.request(hiddenCountValue, 'change'); 功能不起作用。
还有其他功能可以用来在 Firefox 上运行我的代码吗?为什么 jsf.ajax.request(hiddenCountValue, 'change'); 在火狐上工作?
谢谢
卢卡夫:查看>
当我使用 Chrome 时,everithyngs 工作正常,但在 Firefox 上
jsf.ajax.request(hiddenCountValue, '改变');
功能似乎不起作用。
我可以使用其他功能来使我的代码更兼容吗?为什么
jsf.ajax.request(hiddenCountValue, '改变');
不能在火狐上工作?
谢谢
卢卡