Как вызвать функцию сценария Java при нажатии на командную кнопку в простых лицах - PullRequest
0 голосов
/ 27 марта 2012

Мое требование заключается в проверке значений компонентов пользовательского интерфейса с использованием функции сценария Java. я хотел бы вызвать метод бэк, как только проверка прошла успешно. Как я могу сделать это возможным, используя Primefaces 2.2 и Java-скрипт. Вот пример кода, который я использую:

<p:commandButton id="saveButton" value="#{msgs['button.save.label']}"
    image="ui-icon #{msgs['button.save.icon.class']}" 
    actionListener="#{testBean.saveValues}"/>

Ответы [ 2 ]

1 голос
/ 29 марта 2012

Если вы хотите остановить выполнение вашего actionListenerfrom, просто верните false в вашей функции js кнопки

эта кнопка не будет выполнять actionListener

<p:commandButton id="saveButton" value="#{msgs['button.save.label']}"
image="ui-icon #{msgs['button.save.icon.class']}" 
actionListener="#{testBean.saveValues}" onclick="return false;"/>

это будет ...

    <p:commandButton id="saveButton" value="#{msgs['button.save.label']}"
image="ui-icon #{msgs['button.save.icon.class']}" 
actionListener="#{testBean.saveValues}" onclick="return true;"/>

вместо жесткого кода onclick вызовите вашу функцию js onclick=myJsValidation() все зависит от возвращаемого значения функции js

0 голосов
/ 29 марта 2012

В случае ошибки вашего saveValues:

FacesContext.getCurrentInstance().addMessage("ERROR_MESSAGE", new FacesMessage(FacesMessage.SEVERITY_INFO, "Error Message", "Error Message"));

В своем xhtml добавьте атрибут обновления для commandButton:

<p:growl id="growl_ID"/>
<p:commandButton value="Save" actionListener="#{testBean.saveValues}" update="growl_ID"/>
...