有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

带有嵌入式commandLink的java Primefaces数据表

我试图嵌入Primefaces commandLink,并从Primefaces数据表列中的链接调用动作侦听器。这不可能吗?“Test”onclick警报被触发,但它从未进入我bean的方法

<p:dataTable var="location" value="#{adminBean.locations}">  
        <p:column headerText="Options">  
            <p:commandLink value="delete" actionListener="#{admin.deleteLocation}" onclick="alert('test')"/>
        </p:column>    
    </p:dataTable>

bean代码:

public void deleteLocation(ActionEvent e){
   //delete logic here...
}

共 (1) 个答案

  1. # 1 楼答案

    这是可能的。应该调用actionListener。请记住p:commandButton默认情况下使用ajax。因此,您应该使用update属性来定义要更新的组件

    但是,我不知道这是否会影响actionListener。你用action而不是actionListener试过了吗

    以下是我如何使其工作的示例:

    <p:commandLink action="#{spc.selectPatient(item)}"
                   ajax="false"
                   value="Open"/>
    

    bean方法如下所示:

     public String selectPatient(Patient p) {
        // do something
        // return some outcome
     }