html - comment obtenir des custom attribut de balise d'option dans la liste déroulante?
Si j'ai ce code:
<select onchange="alert('?');" name="myname" class="myclass">
<option isred="-1" value="hi">click</option>
</select>
Comment puis-je obtenir la valeur '-1' de l'attribut personnalisé isred ?
Je ne veux pas utiliser la valeur de la propriété.
Et je ne veux pas la cible de l'option de la balise par un nom ou id.
Je veux quelque chose comme onchange="alert(this.getselectedoptionID.getAttribute('isred'));"
Peut aider quelqu'un?
Aussi je ne veux pas utiliser jquery.
- double possible de Comment obtenez-vous actuellement sélectionné <option> dans un <select> via JavaScript? -- il semble que vous savez comment obtenir de l'attribut, tout simplement pas comment faire pour obtenir l'option sélectionnée... eh bien, c'est couvert dans la question.
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin de comprendre ce que le selectedIndex est, puis
getAttribute
à partir de laquelle les options Tableau [].jsFiddle DÉMO
Comme une note de côté:
Ne pas utiliser de javascript en ligne dans votre
HTML
. Vous souhaitez vous séparer de votre logique métier de votre INTERFACE utilisateur. Créer un javascript, des gestionnaires d'événements de la place pour les gérer. (jQuery /Angular /etc)<input onchange="update(this.value, this.getAttribute('code'))" value="1" id="quantity_1001" code="1001" type="number">
Quoi de mieux que proposez-vous à la place de inline onchange déclaration? Je veux valeurs passées en paramètres! Merci à l'Avance!onchange="myFunc(this.value, this.getAttribute('code'))"
avec "mafonction" être unfunction myFunc(val, code) { /* do something */ }
dans votre code JS. Idéalement, ne sont même pas utiliser lesonchange
méthode, et de la configuration de la onchange de la méthode dans le JS lui-même, mais c'est une notion distincte, mais vous pouvez chercher en ligne et de voir comment c'est fait! Espérons que cela aide. Cheersen jquery, il vous suffit d'écrire:
Utiliser quelque chose comme ceci:
En supposant que nous avons un
HTML
balisage comme ci-dessous:La
attr "ren"
peut être accédé comme ceci:Démo
Vous utilisez:
.getAttribute('isred')
Vous voulez:
JS:
HTML:
vous pouvez