2010-10-20 9 views
2

J'ai une datepicker sur une zone de texte txtDate. Je dois enlever le datepicker, si une case à cocher particulière chkBox est vérifiée. Et pour réappliquer le sélecteur de date si la case à cocher n'est pas cochée.Supprimer jquery datepicker d'un contrôle html

J'ai essayé de rendre la zone de texte en lecture seule, mais datepicker fonctionne toujours. Comment faire ça

EDIT: Dans le même événement de case à cocher, je souhaite également rendre un contrôle select (dropdown) non sélectionnable. Personne ne devrait être capable de changer quoi dans le contrôle de sélection.

Répondre

5

Dans votre gestionnaire change pour la case à cocher vous pouvez appeler enable ou disable sur le datepicker, par exemple:

$("#chkBox").change(function() { 
    $("#txtDate").attr("readonly", this.checked) 
       .datepicker(this.checked ? "disable" : "enable"); 
    //for your edit: 
    $("#someSelect").attr("disabled", this.checked); 
}); 

You can try it out in a demo here.