jQuery - obtenir des <li> de <ul> avec une classe spécifique
J'ai une liste:
<ul id="list">
<li class="one">Item A</li>
<li class="one">Item B</li>
<li class="two">Item C</li>
<div id="pressed">Submit</div>
</ul>
et quand "Soumettre" est pressé, je veux récupérer la valeur de l'élément de la liste qui a une classe de "deux". Dans ce cas, pressé de Soumettre serait de retour "Point C". Voici le jQuery, j'ai essayé:
$("#pressed").click(function() {
var v = $('#list').filter('.two').val();
alert(v);
});
Mais tout cela revient est 0
. Quelle est la meilleure façon de le faire? Un seul <li>
aura une classe de "deux" à tout moment.
Li n'a pas de valeur.
OriginalL'auteur John 'Mark' Smith | 2013-11-06
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin de html() ou texte() à la place du val(). La fonction val() est utilisé pour la saisie des éléments tels que du texte, case à cocher, etc. Aussi mettre des div à l'extérieur de l'ul pour faire de votre code html valide que Rory McCrossan souligné
Démonstration En Direct
OriginalL'auteur Adil
Tout d'abord, le HTML n'est pas valide comme
div
éléments ne peuvent pas être des enfants deul
:Deuxièmement,
text()
est la propriété que vous voulez, pasval()
:Exemple de violon
<a href="#" id="pressed">Submit</a>
) ou un bouton de la balise (<button id="pressed">Submit</button>
) pour tout ce qui est cliquable.La Source s'il vous plaît...mais je ne suis pas nécessairement en désaccord.
à partir d'une accessibilité point je suis d'accord. Cependant, il existe certains cas où c'est juste pas possible.
Désolé, j'ai fait une généralisation dans ma déclaration. La plupart du temps (et certainement dans le cas de l'exemple dans cette question) une balise d'ancrage ou un bouton doit être utilisé pour les éléments cliquables. Les avantages de l'utilisation d'entre eux sont de
cursor: pointer
par défaut, l'obtention de latabindex
sur l'élément par défaut, et l'identification de balises, comme cliquable avec les lecteurs d'écran. Je suis d'accord que parfois ils ne sont pas le meilleur ajustement si (comme lorsque vous tentez d'en faire un élément de bloc qui contient des éléments cliquables).tout à fait d'accord
OriginalL'auteur Rory McCrossan
Après Rory McCrossan de la correction avec du HTML, vous pouvez le faire.
OriginalL'auteur Hossain Muctadir