/ / jquery Désactiver plusieurs listes déroulantes sur la case à cocher activer - php, jquery, case à cocher, menu déroulant

jquery Désactiver plusieurs listes déroulantes sur la case à cocher activer - php, jquery, case à cocher, menu déroulant

Une partie de mon formulaire est un endroit où les utilisateurs peuvent choisir les jours où ils sont fermés et les heures d'ouverture les jours où ils sont ouverts.

J'ai fait un violon, cela devrait le rendre clair.

Ce formulaire est généré dynamiquement en PHP car il devra être multilingue.

http://jsfiddle.net/ZXSKH/

J'ai besoin d'aide pour désactiver les listes déroulantes pour un jour précis, lorsque les utilisateurs cliquent sur la case à cocher pour être fermés ce jour-là.

De plus, les valeurs seront affichées sur une base de données, toute idée comment je dois désactiver les valeurs des menus déroulants (les heures d'ouverture) quand ils ne sont pas ouverts ce jour-là?

Réponses:

1 pour la réponse № 1

Vous avez mentionné que tous les champs de saisie (cases à cocher, listes déroulantes ...) sont créés de manière dinaméricaine, utilisez donc l'attribut de valeur de chaque case à cocher pour déclencher une action d'activation / désactivation.

J'ai édité votre violon: http://jsfiddle.net/ZXSKH/16/

J'ai peur de ne pas être très familier avec MooTools, alors j'ai écrit un petit script en utilisant jQuery mais j'espère que cela pourrait être réécrit avec MooTools sans trop de tracas.

Btw, je suggère fortement de doubler tous les attributs, même si je pense que le navigateur moderne peut gérer cela sans aucun problème. Aussi, je suis sûr que for attribut de label est utilisé pour les identifiants d'éléments, pas pour les noms.

J'espère que cela aide un peu ...


0 pour la réponse № 2

Vous pouvez donner un id aux boîtes de sélection et aux cases à cocher et utilisez l'attribut désactivé pour désactiver la boîte de sélection comme ci-dessous:

$("#id").attr("disabled","disabled");


0 pour la réponse № 3

vous pouvez déclencher un événement en sélectionnant la case à cocher et utiliser la réponse ci-dessus comme suggéré ci-dessous