我正在学习Struts2 / Hibernate / Jquery,我无法提交一个对话框表单来发送一个“alumno”对象(alumno.nombre等)从jsp到action。 addUser()方法仅验证表单字段。我试图复制通常<s:form>
的相同行为,以便调用方法“guardar”并在db中保存alumno对象。
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>
答案 0 :(得分:0)
最后它比我想象的要容易,因为调用提交按钮($("#entrar").click();
)的click事件就可以了。
这是因为我不明白jquery和ajax是如何工作的以及到底是什么。