2010-01-20 6 views
1

Je dois désactiver le bouton de soumission sur mon formulaire et activer si l'événement onchange se produit pour toute autre entrée sur le formulaire
donc en gros je dois:jquery: désactiver le bouton de soumission dans un formulaire et l'activer onChange de n'importe quel élément sur le formulaire

  • désactiver le bouton d'envoi
  • ajouter une méthode qui enbales le bouton d'envoi à l'événement onchange pour toutes les autres entrées sur le formulaire

quelqu'un sait comment faire ce ? (Surtout le second)

Répondre

2

En utilisant jQuery 1.4:

// To disable submit button 
$('#myform').find (':submit').attr ('disabled', 'disabled'); 

// Re-enable submit 
var form = $('#myform'); 
$(':input', form.get(0)).live ('change', function (e) { 
    form.find (':submit').removeAttr ('disabled'); 
}); 
+0

Merci beaucoup :) !!! – Omu

+0

@Omu Je sais que c'est vraiment vieux mais c'est exactement ce que j'essaie de faire! Un problème que j'ai trouvé, l'onchange s'applique au bouton de soumission, donc si le bouton de soumission est désactivé, et je clique simplement dessus, il est maintenant activé. Avez-vous trouvé un contournement pour cela? –

+0

@Jonah Katz ne sais pas mais (une pensée rapide) essayez $ ('input [type = "text"], sélectionnez'). Live ('change', function (e) {... au lieu de ce qu'il écrit là, ou poser une nouvelle question – Omu

0

Quelque chose comme ceci:

$("#myform").children().change(function(){ 
    $("#submit").removeAttr('disabled'); 
}); 
1

Essayez ceci:

$("form").submit(function() { 
    $(this).find(":submit").attr("disabled", "disabled"); 
}).find(":input").change(function() { 
    $(this).parent("form").find(":submit").removeAttr("disabled"); 
}); 
+0

Non "}" pour correspondre à votre « { "? –

Questions connexes