2011-06-30 48 views
2

我使用谷歌地圖API來獲取客戶端上的一個用戶的位置......我想然後發送到這個服務器端做一些處理,並形成一個選擇框(與本地地址) 。的Javascript JSF

這樣做的最好方法是什麼?優先選擇我想按下一個按鈕並使用ajax填充框。

謝謝!

回答

2

下面是如何將JavaScript值(用戶位置),通過與阿賈克斯的bean的實例。

該位置將存儲在<h:inputHidden>字段中。執行屬性<f:ajax>指定將發送給服務器進行處理的值。

<h:form id="formname"> 
    <h:inputHidden value="#{indexBean.value}" id="hvalue" /> 
    <h:commandButton value="action" onclick="getLocation();" action="#{indexBean.doSome}"> 
     <f:ajax execute="hvalue" render="output" /> 
    </h:commandButton> 
    <h:outputText value="#{indexBean.output}" id="output" /> 
</h:form> 

Ajax請求之前發送的<h:commandButton>的onclick屬性指定的JavaScript函數來執行。您的Javascript函數應該在隱藏字段中設置值。

function getLocation() {   
    document.getElementById("formname:hvalue").value = "TEST";      
} 

<f:ajax>的渲染屬性指定在客戶端上更新哪些內容。在這種情況下,其<h:outputText>在你的情況下,它將是你的<h:selectOneMenu>