在 Struts2 中提交对话框表单

Submit dialog form in Struts2

我正在学习 Struts2/Hibernate/Jquery,但我无法提交对话表单以将来自 jsp 的 "alumno" 对象(alumno.nombre 等)发送给操作。 addUser() 方法只验证表单字段。我试图复制通常 <s:form> 的相同行为,以便调用方法 "guardar" 并将校友对象保存在数据库中。

Jquery JSP:

 dialog = $( "#dialog-form" ).dialog({
  autoOpen: false,
  height: 400,
  width: 350,
  modal: true,
  buttons: {
    "Guardar": addUser,
     "Cerrar": function() {
       dialog.dialog( "close" );
     }
  },
  close: function() {
    form[ 0 ].reset();
    allFields.removeClass( "ui-state-error" );
  }
});
// Se ejecuta cuando ya se ha creado/editado un alumno 
form = dialog.find( "form" ).on( "submit", function( event ) {
    event.preventDefault();
    addUser();
    alert("form");
});

$( "#create-user" ).button().on( "click", function() {
    event.preventDefault();
    dialog.dialog( "open" );
});

JSP

<div id="dialog-form" title="Crear nuevo alumno">
    <p class="validateTips">Todos los campos del formulario son obligatorios.</p>
  <s:form id="formularioAlumnos" action="guardarAdminAlumno">
<fieldset>
  <label for="nombre">Nombre</label>
  <input type="text" name="alumno.nombre" id="nombre">
  <label for="apellidos">Apellidos</label>
  <input type="text" name="alumno.apellidos" id="apellidos">

  <!-- Allow form submission with keyboard without duplicating the dialog button -->
  <s:submit id="entrar" ctabindex="-1" style="position:absolute; top:-1000px"/>
</fieldset>

struts.xml

   <action name="*AdminAlumno" method="{1}" class="AdminGestAlumActionBean">
        <result name="success" type="redirect">gestionAlumnos</result>
    </action>

最终比我想象的要容易,因为调用提交按钮 ($("#entrar").click();) 的点击事件完成了这件事。

发生这种情况是因为我还不了解 jquery 和 ajax 的工作原理以及目的。