【问题标题】:Call backing bean from p:inputText ondblclick从 p:inputText ondblclick 调用支持 bean
【发布时间】:2014-03-10 01:54:06
【问题描述】:

我需要在 p:dataTable 中双击 p:inputText,这样它就会将我带到另一个页面并启动详细信息。是否可以从 Primefaces p:inputText ondblclick 调用支持 bean 方法?

【问题讨论】:

    标签: primefaces


    【解决方案1】:

    p:inputText到底是一个普通的input,你可以用jQuery在上面注册ondblclick,然后你可以调用一个p:remoteCommand来访问你的bean。

    我假设您有多个 inpuText,因为您有一个 dataTable

    xhtml

    <p:dataTable var="car" value="#{bean.cars}">  
        <p:column headerText="Model">  
            <p:inputText value="#{car.model}" styleClass="dbClickInput" />    
        </p:column>  
    </p:dataTable> 
    
    <p:remoteCommand name="callDetailsCommand" 
                     actionListener="#{bean.callDetails()}" />
    
    <script>
      $(document).ready(function() { 
          $('.dbClickInput').dblclick(
              function() {
                callDetailsCommand([{name: 'carModelValue', value: $(this).val()}]);
              }
          );
       });
    </script>
    

    public void callDetails() {
       FacesContext context = FacesContext.getCurrentInstance();
       Map map = context.getExternalContext().getRequestParameterMap();
       String carModelValue = (String) map.get("carModelValue");
    }
    

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2015-02-22
      • 2012-11-27
      • 2015-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-04
      • 1970-01-01
      • 2013-03-24
      相关资源
      最近更新 更多