如何从jquery设置java bean值

时间:2014-10-21 06:21:45

标签: javascript jquery jsf

我想知道如何从jquery为java变量设置值。

Html代码:

<html>    
  <head>    
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></meta>    
    <title>TEST</title>    
  </head>    
  <script>    
    $(function() {    
      $("#payid").val("1234");    
    });    
  </script>    
  <body>    
    <div>    
      <input type="text" id="payid" value="#{bean.paymentId}">    
    </div>    
  </body>    
</html>    

Java代码

public class method(){  

  String paymentId;  

  public void setPaymentId(String paymentId) {  
    this.paymentId = paymentId;  
  }  
  public String getPaymentId() {  
    return paymentId;  
  }  
}

但是在提交表格时我没有任何价值。我从bean获得null值。

2 个答案:

答案 0 :(得分:2)

您需要使用ajax调用或套接字进行通信。

您需要了解在经典Web应用程序(没有套接字)中有两个方面:客户端和服务器。您的类存在于服务器端,而html / jquery存在于客户端。并且只有客户端可以向服务器请求数据,因此来自html页面的事件必须是 触发将数据推送到服务器,在那里更新POJO(类)。

如果您可以使用套接字,则可以使用双向连接,从而使您能够从服务器POJO更新客户端代码并从html更新。

您需要在受监控的字段上应用anchange事件,当它发生值更改时,您需要向服务器发送请求并更新字段。

 $.ajax({url:"/my_server/update",data: {value: $("#payid").val()},success:function(result){
        // do some actions on response
  }});

答案 1 :(得分:0)

我认为不是价值

value="#{bean.paymentId}"

你应该写的     值=&#34; $ {bean.paymentId}&#34;

即。用$ sign替换#符号。