Как запустить модальное всплывающее окно jquery в плитках Struts2?

Я разрабатываю приложение для корзины покупок. В моей заявке есть форма регистрации клиента. Я использую плитки Struts2. Когда клиент нажимает кнопку "Зарегистрировать", у моего приложения появляется окно модели jquery. В моем NewUser.java класс действия переопределяет validate() метод ActionSupport учебный класс. Если поле электронной почты пустое, Как я могу открыть форму регистрации с ошибкой поля.

Мой класс действий:

@Override
public void validate() {
    if (customer.getEmail().equals("")) {
        addFieldError("email", "First Name is Required.");
    }
}


Мое всплывающее окно:

<div id="register" class="modal hide fade" tabindex="-1">
    <form action="CustomerAdd">
      <label class="control-label" for="email">Email address</label>
      <div class="controls">
        <s:textfield name="customer.email" cssClass="input-xlarge"/>
      </div>  
    </form>
</div>
<a href="#register" class="btn btn-small" data-toggle="modal">
    Register now &nbsp; <i class="icon-chevron-right"></i>
</a> 


Struts2 action:

 <action name="CustomerAdd" class="com.shopping.op.customer.CustomerAdd">
    <result name="success" type="tiles">success_customer</result>            
    <result name="failed" type="tiles">failed_customer</result>
    <result name="not_available" type="tiles">user_already_added</result>
    <result name="input" type="tiles">validate_customer</result>
 </action>


определение плитки:

<definition name="validate_customer" extends="baselayout">        
    <put-attribute name="opr" value="/customer/customer.jsp"/>      
    <put-attribute name="body" value="/login.jsp"/><!--This page has the Register button-->      
</definition> 


Заранее спасибо!

1 ответ

Решение

В вашем всплывающем окне вам нужно добавить actionerror тег для отображения ошибок. Как это,

<form action="CustomerAdd">
  <label class="control-label" for="email">Email address</label>
  <div class="controls">
    <s:textfield name="customer.email" cssClass="input-xlarge"/>
    <s:actionerror/>
  </div>  
</form>

Я надеюсь, что если вы правильно обработали метод проверки, вы не сможете отправить его до тех пор, пока не введете электронное письмо. Что вы пропустили, так это отображение ошибки во всплывающем окне.

Другие вопросы по тегам