Comment puis-je obtenir de l'attribut class de la valeur à l'aide de jquery et javascript
Je vais essayer d'obtenir la classe de l'option sélectionnée et de l'utiliser dans une comparaison instruction pour trouver exactement quelle classe il est. J'ai continué à obtenir une valeur non définie, même si l'option balise dispose d'une classe. Quelqu'un peut-il m'aider à comprendre pourquoi je ne suis pas d'obtenir une valeur de retour?
Voici le code que j'utilise:
Html:
<select name="datagrid_filter" onchange="startFilter();">
<option>All</option>
<option disabled="true">Assignment:</option>
<option disabled="true">Client:</option>
<option disabled="true">Type:</option>
<option class="type" value="Activity">   Activity</option>
<option class="type" value="Alert">   Alert</option>
<option class="type" value="Lead">   Lead</option>
<option class="type" value="Notification">   Notification</option>
</select>
Javascript:
var cs1 = $("option:selected", this).attr("class");
if(cs1 == 'Type'){
//do something
}
changement de "Type" pour "type" en js
j'ai fait le changement, mais le problème est que cs1 est pas défini
Qu'est-ce que
j'ai fait le changement, mais le problème est que cs1 est pas défini
Qu'est-ce que
this
?OriginalL'auteur user2671355 | 2013-09-21
Vous devez vous connecter pour publier un commentaire.
Vous devriez changer:
onchange="startFilter();"
àonchange="startFilter(this);"
et dans startFilter fonction:
Noter que, dans le contexte de startFilter fonction,
this
estwindow
objet.OriginalL'auteur Tho
Essayez de ne pas avoir le JavaScript en ligne
Violon Démo
JavaScript
OriginalL'auteur Tomas Santos
Pourquoi n'utilisez-vous pas
hasClass
jQuery API? Il est très bon dans ce cas:Et assurez-vous que
this
renvoie à un objet approprié (comme @undefined mentionné)Ou alors:
Ou:
OriginalL'auteur Hi I'm Frogatto
OriginalL'auteur nirali