应用程序是在移动设备浏览器的屏幕上显示设备到GPS坐标的距离。
HTML5允许从移动设备获取坐标,但这些坐标需要定期发送到服务器,与目标计算的距离和结果显示在网页上?
如何强制JSF和OpenFaces页面定期发布h:inputHidden值并使用ajax渲染h:outputText? Primefaces有p:poll组件。
<h:form id="coords">
<h:inputHidden id="latitude" value="setByJavascript"></h:inputHidden>
<h:inputHidden id="longitude" value="setByJavascript"></h:inputHidden>
</h:form>
<h:outputText id="distance" value="#{bean.distance}"></h:outputText>
答案 0 :(得分:2)
您可以使用OpenFaces客户端API从setInterval()
函数内部调用Ajax(O$.ajax.request()
函数)请求,如下所示:
<body onload="setInterval(function() {
O$.ajax.request(null, null, {
execute: 'coords:latitude coords:longitude',
render: 'distance'});
}, 10000)">
<h:form id="coords">
...
此代码可能需要一些调整,但它显示了如何完成此操作的一般概念。