/ / Desativar entradas após envio de formulário com o plug-in de formulário jQuery - jquery

Desativar entradas após envio de formulário com o plug-in de formulário jQuery - jquery

Gist of my HTML (tenho vários formulários na mesma página)

<tr>
<form method="post" class="save-form" id="93">
<td>
<a href="#" class="edit">Edit</a> <input type="submit" value="save" name="save" class="save hidden" />
</td>
<td class="center gray">
<input type="text" value="234" name="views" />
</td>
</form>
</tr>

Eu estou usando o jQuery Form Plugin.

$(".save-form").each(function() {
$(this).ajaxForm({
beforeSubmit: function() {
//
},
success: function(data) {
//
}
});
});


$(".save-form").submit(function() {
$(this).parent().find("a.edit").show();
$(this).parent().find("input.save").hide();
// $(this).parent().find("input").attr("disabled", "disabled");
});

Tudo isso funciona bem.

Mas eu quero mudar tudo de $(".save-form").submit(function() { para dentro success:. Eu não consegui descobrir com o HTML que tenho ..

Eu também quero desativar o save entrada após o formulário ter sido enviado. Se eu tentar com $(".save-form").submit(function() {, desabilita a entrada, MAS não enviará os dados de entrada - acho que a entrada está sendo desabilitada antes de ser processada. Se estiver desabilitada por dentro success: deve funcionar, mas também não consigo descobrir.

Como posso processar o formulário e desativar as entradas?

Respostas:

2 para resposta № 1

Verifique isso: http://jsfiddle.net/niski/JjBTk/


1 para resposta № 2

Eu diria que você deveria tentar assim:

$(".save-form").each(function() {
var form = this;
$(this).ajaxForm({
beforeSubmit: function() {
$(form).parent().find("input.save").attr("disabled", "disabled");
},
success: function(data) {
$(form).parent().find("a.edit").show();
$(form).parent().find("input.save").hide();
}
});
});