2009-10-22 4 views
0

lorsque je clique sur un lien que je prends est la valeur href dans une variable (le nombre représente un identifiant unique), puis ... j'ai un ul séparé:jquery traversant

<ul class="class_one"> 
    <li class="class_two"><a href="2345">some text</a></li> 
    <li class="class_three"><a href="6789">some text</a></li> 
</ul> 

ce que je suis en train faire est de voir si j'ai un "a" dans mon "ul" qui a le même id que j'ai stocké dans ma variable.

J'ai essayé quelque chose comme ça (bien sûr sans résultat):

$('ul.class_one').find('a[href="' + myVar + '"]') 
//and if it finds no element do something 
//i think is something wrong with the quotes ('a[href="' + myVar + '"]') 

Répondre

1

Avez-vous essayé d'échanger vos devis? jQuery utilise peut-être des guillemets simples pour la correspondance de sélection d'attributs ...

$('ul.class_one').find("a[href='" + myVar + "']"); 

De jQuery Documentation

Une valeur d'attribut. Les citations sont facultatives dans la plupart des cas, mais devraient être utilisées pour éviter les conflits lorsque la valeur contient des caractères comme "]". variables peuvent être utilisées en utilisant la syntaxe suivante: [name = ' "+ MaVar +"']

+0

j'ai essayé les deux versions, mais n'obtient pas tout bon :( – kmunky

+0

désolé ... mon mauvais, j'ai mal tapé quelque chose, ça marche! Merci les gars;) – kmunky

+0

Heureux que vous l'avez eu le travail! –

-2

CSS et jQuery par extension, utilise des guillemets simples.

$("ul.class_one").find("a[href='" + myVar + "']"); 
+1

Comme avec tout JavaScript et CSS, vous pouvez indifféremment utiliser des guillemets simples ou doubles tant que vos délimiteurs sont du même type. –

1

Il est possible de supprimer les citations tout à fait ...

$('ul.class_one').find('a[href='+myVar+']'); 

devrait fonctionner