Игнорировать подтверждение при нажатии кнопки

У меня есть страница, на которой я редактирую некоторый объект. На этой странице есть две командные кнопки. Один «Назад», а другой «Сохранить», а также на этой странице у меня есть форма с полями ввода (idInputSubject ). Некоторые из них обязательны, некоторые нет.

Как я могу гарантировать, что мы нажмем кнопку «Назад» (отменим редактирование и вернемся назад )проверка будет проигнорирована, что сейчас не так. Теперь, когда я нажимаю кнопку «Назад» или «Сохранить», появляются сообщения о проверке, если я не заполнил требуемые поля правильными значениями (idInputSubject ).

Кнопки «Назад» и «Сохранить» имеют одинаковую форму :

<h:form id="idFormMeasureDetail" styleClass="bodyForm" prependId="false">
  ...
   <p:commandButton value="#{contentMB.msg.label_back.value}"
        action="#{chooseMeasureControllerMB.aSearch}"
        rendered="#{detailMeasureMB.navigation eq 0}" ajax="false"
        icon="ui-icon-arrowreturnthick-1-w"/>
   <p:commandButton value="#{contentMB.msg.button_save.value}" ajax="false" 
        icon="ui-icon-disk" actionListener="#{detailMeasureControllerMB.alApplyChanges}" 
                    title="#{contentMB.msg.tip_Apply.value}" />

  ...
   <p:inputTextarea id="idInputSubject" value="#{detailMeasureMB.measure.aufgabe}"
    readonly="#{!userSessionMB.supervisor and !detailMeasureMB.isCreator}"
    required="#{globalSessionMB.globalWebOptionsMap['MMRequiredSubject'].propvalue}"
            title="#{contentMB.msg.tip_Betreff.value}"
            autoResize="false" style="width:100%;" >
   </p:inputTextarea>
   <p:message id="inputSubjectMsg" for="idInputSubject" display="icon" />
  ...

</h:form>

. ChooseMeasureControllerMB:

@ManagedBean(name = "chooseMeasureControllerMB")
@RequestScoped
public class ChooseMeasureControllerMB extends BaseMeasureControllerMB {
...
public String aSearch() {
           ...
    // navigate to target-page
    return "/pages/mm/showMeasuresList.xhtml?faces-redirect=true";
}
...
}
9
задан Nikola 8 August 2012 в 11:14
поделиться