2015-08-19 2 views
1

Это код из моего .xhtml файла, и я добавил под FIELDSETКак вызвать метод после нажатия на поле в сетках?

index.xhtml

<p:fieldset legend="BPS Listener Method" toggleable="true" collapsed="#{bpsFrontBean.bpsListenerSwitch}" toggleSpeed="500" style="width: 920px;margin: 0 auto; text-align: left"> 
    <p:ajax listener="#{bpsFrontBean.onToggleBpsListenerSwitch}" update="parametersGrid"/> 
    ......... 
    </p:fieldset> 

если я запускаю код, указанный выше, прежде чем страница отображается, есть поговорка об ошибке :

javax.faces.view.facelets.TagException: <p:ajax> Event attribute could not be determined: null 

Я хочу вызвать метод, если щелкнул переключаемый щелчок.

+0

какая версия primefaces вы используете? – Fritz

+0

primefaces 5.2 sir, –

+0

отправил ссылку на руководство пользователя – Fritz

ответ

1

Страница 205-206 из Primefaces Руководства пользователя (http://www.primefaces.org/showcase/ui/panel/fieldset.xhtml) говорит:

Ajax Поведение Событие

тумблера по умолчанию и только Аяксу поведение события обеспечивается FIELDSET, который обрабатывается когда содержимое переключено. В случае, если вы определили слушателя, он будет вызываться , передавая экземпляр org.primefaces.event.ToggleEvent.

Вот пример, который добавляет facemessage и обновляет рычание. Компонент, когда параметр fieldset переключен.

<p:growld id="messages" /> 
<p:fieldset legend="Toggleable Fieldset" toggleable="true" 
<p:ajax listener="#{bean.onToggle}" update="messages"> 
//content 
</p:fieldset> 

На боба:

public void onToggle(ToggleEvent event) { 
    Visibility visibility = event.getVisibility(); 
    FacesMessage msg = new FacesMessage(); 
    msg.setSummary("Fieldset " + event.getId() + " toggled"); 
    msg.setDetail("Visibility: " + visibility); 
    FacesContext.getCurrentInstance().addMessage(null, msg); 
} 
+0

Спасибо за это. Вы не закрыли теги правильно: ' 'и' ' – GameDroids

Смежные вопросы