Таблица простых чисел со встроенной командой link - PullRequest
2 голосов
/ 16 мая 2011

Я пытаюсь встроить команду Primefaces commandLink и вызвать слушатель действия по ссылке внутри столбца таблицы данных Primefaces. Это не возможно? Оповещение onclick «Test» срабатывает, но оно никогда не попадает в метод моего бина.

<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>

код боба:

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

1 Ответ

4 голосов
/ 16 мая 2011

Это возможно. Ваш 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
 }
...