2010-07-27 8 views
5
<span> 
    <label for="305"> 
     <input type="checkbox" name="305" style="vertical-align: middle;" value="305" id="305"> Farming General 
    </label> 
</span> 

Comment puis-je obtenir le texte "polyculture" en utilisant jQuery. S'il vous plaît ne me demandez pas de changer la structure HTMLComment obtenir du texte brut à côté d'un élément HTML à l'aide de jQuery?

+1

Vous devez modifier le balisage quel que soit, en tant que 'id' commençant par un nombre est invalide et causera des problèmes bizarres. – bobince

+0

@bobince - Il vaut la peine de le noter puisque nous le voyons plus maintenant que la règle s'applique à HTML4 et non à 5 ... dernière lecture, ils doivent seulement être uniques en HTML5. –

Répondre

11

Vous pouvez le saisir à l'aide d'un sélecteur d'identité, allant au .parent() et en utilisant .text() comme ceci:

​$("#305").parent().text() 
//or: 
$("label[for='305']").text(); 

Bien que, ID commençant par un certain nombre ne sont pas valides jusqu'à HTML5, juste être conscient :)


Vous pouvez également obtenir sans jQuery, comme ceci:

document.getElementById("305").nextSibling.nodeValue 

Bien que vous pouvez la réduire avec $.trim(), comme ceci:

$.trim(document.getElementById("305").nextSibling.nodeValue) 
+0

$ ("# 305"). Parent(). Text() Ceci est plus faisable à ma fonction actuelle merci –

0

C'est le plus simple que je pense.

$("label[for='305']").text();

Questions connexes