2014-04-07 68 views
0

我有這樣的JSTL變量在我的JSP:呼叫JSTL的變量javascript函數

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>  
<jsp:useBean id="RECHERCHE_SCENARIO_BEAN" 
     class="recherche.RechercheScenarioBean" 
     scope="session" /> 

    <c:set scope="page" var="totoBean" 
     value="${ RECHERCHE_SCENARIO_BEAN.totoBean }" /> 

我怎麼能說totoBean在javascript函數?

+1

你不這樣做,JavaScript是客戶端,豆是服務器端,它只是在你的JSP的文本輸出。您需要使用ajax從javascript訪問服務器,或者傳統地提交表單。 – NimChimpsky

回答

0

通過「h:inputHidden」標記呈現隱藏字段,通過JavaScript分配新值。

JSF ...

<script type="text/javascript"> 
    function setHiddenValue(new_value){ 

    document.getElementById('myForm:hidden2').value = new_value; 

    } 
</script> 
<h:form id="myForm">    
    <h:inputHidden id="hidden2" value="#{user.hidden2}" /> 
    <h:commandButton value="submit" action="..." onclick="setHiddenValue('this is hidden2');" /> 
</h:form> 

而我管理的bean

@ManagedBean(name="user") 
@SessionScoped 
public class UserBean 
{ 
    public String hidden2; 

    public void setHidden2(String hidden2) { 
     this.hidden2 = hidden2; 
    } 
}