web-dev-qa-db-fra.com

knockout.js et écouter pour vérifier l'événement sur la case à cocher

J'essaie d'obtenir une fonction à exécuter lorsqu'une case à cocher est cochée ou décochée pour vérifier que toutes les cases à cocher ne sont pas cochées mais qu'elle n'est jamais exécutée. Je suppose que je ne le fais pas correctement.

@Html.CheckBox("Subscription", new{ data_bind="disable: Disabled, checked: Checked, click: $parent.allSubscriptionsUnchecked"} ) 
50
Mike Flynn

Vous pouvez ajouter une liaison checked et click à une entrée. Cependant, vous voudriez return true; depuis le gestionnaire de clics. Cela permettra à l'action par défaut de se poursuivre (la case sera cochée/décochée).

Voici un exemple: http://jsfiddle.net/rniemeyer/cnkVA/

Une autre technique consiste à pousser cette logique dans votre modèle de vue et à vous abonner aux modifications apportées à un booléen observable et à exécuter votre action comme: http://jsfiddle.net/rniemeyer/cnkVA/2/

143
RP Niemeyer