2011-01-27 8 views
9

je peux le désactiver en utilisant bien ceci:bouton Activer dans JQuery dialogue

button.attr('disabled', 'disabled').addClass('ui-state-disabled'); 

Mais comment puis-je le réactiver? Quand j'utilise ceci:

button.attr('enabled', 'enabled').addClass('ui-state-enabled'); 

Cela ne fonctionne pas.

+3

Il n'y a pas d'attribut appelé 'permis'. –

Répondre

20
button.removeAttr('disabled').removeClass('ui-state-disabled'); 
+0

Est-il possible de désactiver le bouton sans supprimer sa fonctionnalité de survol? – Phillip

0

Avec jquery, vous pouvez utiliser removeAttr et removeClass pour se débarrasser de votre attribut/classe désactivé:

button.removeAttr('disabled').removeClass('ui-state-disabled'); 
0

Je pense que c'est ce que vous cherchez:

button.removeAttr("disabled"); 
5

Essayé toutes les réponses ici et rien ne fonctionnait pour moi.

Le problème est que je html:

<input type="submit" value="Save" id="saveButton" disabled="disabled" /> 

J'appelle globaly:

$("button, input:submit, input:button").button(); 

Après que le bouton obtient attribut aria-désactivé = true.

Aucune de suite permettra à la soumettre:

$("#saveButton").attr('disabled',false); 
$("#saveButton").removeAttr('disabled'); 
$("#saveButton").prop('disabled',false); 
$("#saveButton").attr('aria-disabled',false); 
$("#saveButton").removeClass('ui-state-disabled'); 

La seule solution de travail dans ce cas est:

$("#saveButton").button("enable"); 

jQuery Docs UI: Button Widget - enable()

Pour désactiver bouton à nouveau:

$("#saveButton").button("disable"); 

Docs jQuery UI: Button Widget - disable()

+0

** Astuce: ** La désactivation fonctionne de manière similaire, voir ceci [réponse liée.] (Http://stackoverflow.com/a/4279852/1016343) – Matt

+0

C'est la bonne réponse. De cette façon, vous dites essentiellement à jQuery d'activer le bouton et de le faire faire tout le travail. Si vous voulez faire le travail vous-même, vous devez supprimer l'attribut 'disabled', les classes désactivées de l'interface utilisateur jQuery, et configurer les classes hover. Pas besoin de faire tout ça à la main. –

Questions connexes