[Jquery-Es] Saber quien envió el formulario usando jQuery form plugin
stripTM
fer en striptm.com
Sab Sep 1 09:58:34 PDT 2007
stripTM escribió:
> Estoy utilizando jQuery form plugin ( http://www.malsup.com/jquery/form/ )
> para una página que tiene muchos formularios y lo que pretendo es que el
> botón de enviar se vea diferente si uno de los campos ha sido modificado
> y que mantenga su aspecto normal si no hay nada diferente que guardar.
>
>
La solución ha sido en el beforeSubmit (que si que tengo acceso al
formulario) guardarlo como atributo del objeto global (this) y en el
complete recuperarlo.
El código:
MANTENIMIENTO = {
inicio : function() {
var options = {
beforeSubmit : MANTENIMIENTO.antesEnviar,
complete: MANTENIMIENTO.despuesEnviar,
type: 'post',
oFormOrigen: null
};
$("form").ajaxForm(options);
$('form.bloqueFormulario input[@type=text],
form.bloqueFormulario select').bind("change",
function(evento) {
MANTENIMIENTO.sucio($(evento.target.form), true);
});
},
sucio : function(oForm, bEstado) {
if (bEstado)
oForm.find("input[@value=Guardar]").addClass("modificado");
else
oForm.find("input[@value=Guardar]").removeClass("modificado");
},
antesEnviar : function(formData, jqForm, options) {
//$.log("beforeSubmit");
this.oFormOrigen = jqForm;
MANTENIMIENTO.sucio($(this.oFormOrigen), true);
},
despuesEnviar : function(oXHR) {
//$.log("despuesEnviar");
MANTENIMIENTO.sucio($(this.oFormOrigen), false);
}
}
$(document).ready(MANTENIMIENTO.inicio);
--
Saludos -=stripTM=-
Más información sobre la lista de distribución Jquery-Es