Imaginez une page qui utilise des cases à cocher pour garder la trace de listes de diffusion des abonnements sur les animaux:Déterminer quelles cases ne sont pas cochées dans ASP.NET MVC?
cats-list ()
dogs-list (*)
birds-list ()
horses-list (*)
J'utilise la méthode d'extension de Html.Checkbox de ASP.NET MVC dans une boucle (non représenté):
<%= Html.Checkbox("subscriptions[" + i +"]", item.subscribed, item.listName) %>
"i" est la variable d'itération dans la boucle. L'utilisation de cette convention permet à mon action de contrôleur de lier subscriptions[i]
à un List<string>
qui contient alors une liste de noms de listes de diffusion auxquels s'abonner.
Comment puis-je suivre ce qui n'a pas été vérifié? Par exemple, si un utilisateur décoche "dogs-list" pour se désinscrire de cette liste, comment puis-je le dire? Je ne récupèrerai que "faux" du champ de formulaire caché.
EDIT: La seule solution qui vient à l'esprit est pour l'action du contrôleur de se désabonner de toutes les listes de diffusion, puis de se réabonner aux listes contenues dans le List<string>
à partir des cases à cocher. Ce n'est pas idéal cependant.
je n'avais pas pensé approcher comme ça. Très intelligent! Merci. – royco
Juste un autre petit commentaire pour vous remercier à nouveau pour cela. C'est le meilleur extrait de code que j'ai reçu sur StackOverflow. – royco
Aw shucks, tu me fais rougir! Bon d'entendre ça aidé :-) – Charlino