J'ai un select
champ de formulaire que je veux marquer comme "lecture seule", car l'utilisateur ne peut pas modifier la valeur, mais la valeur est toujours soumise avec le formulaire. L'utilisation de l' disabled
attribut empêche l'utilisateur de modifier la valeur, mais ne soumet pas la valeur avec le formulaire.
L' readonly
attribut n'est disponible que pour les champs input
et textarea
, mais c'est essentiellement ce que je veux. Y a-t-il un moyen de faire fonctionner cela?
Deux possibilités que j'envisage incluent:
- Au lieu de désactiver le
select
, désactivez tous lesoption
s et utilisez CSS pour griser la sélection afin qu'elle semble désactivée. - Ajoutez un gestionnaire d'événements de clic au bouton d'envoi afin qu'il active tous les menus déroulants désactivés avant de soumettre le formulaire.
trafalmadorian
arrivé tard, mais les solutions fournies par @ workest sont les meilleures. Il désactive toutes les entrées non sélectionnées. Cela fonctionnerait également si plusieurs options sont activées.$('#toSelect')find(':not(:selected)').prop('disabled',true);