2010-07-06 3 views
1

J'ai un ensemble d'entrées cachées sur ma page html.Pouvez-vous utiliser une valeur d'entrée cachée dans le cadre d'un sélecteur jQuery?

Je cherche à lancer un morceau de jQuery pour vérifier si l'un d'entre eux ont une constante de valeur particulière (« Nouveau »), et si elles le font, puis procédez comme suit:

$('#dataContainer').scrollTo("id of the input with the special value"); 

Est-il possible de faire défiler les entrées en fonction de la valeur à l'aide des sélecteurs jQuery? Dans ce cas, une fois qu'il trouve la première entrée avec la valeur "Nouveau", il peut appeler cette méthode scrollTo() et quitter, il n'a pas besoin de regarder le reste d'entre eux.

Comment le feriez-vous avec jQuery?

Répondre

4

Vous pouvez utiliser le attribute-equals selector, comme ceci:

$('#dataContainer').scrollTo("input[value='New']:hidden"); 

interne qu'il fait vraiment un $("input[value='New']:hidden", this).offset() sur #dataContainer et .offset() renvoie le décalage du premier des éléments appariés, donc ça va aller au premier celui qu'il trouve comme vous voulez.

+0

Qu'est-ce qui se passe dans le cas où il n'y a pas entrées avec « Nouveau »? Comment puis-je m'assurer que je ne commettrai pas d'erreur dans ce cas? – FrankTheTank

+0

@FrankTheTank - Il ne défilera pas dans ce cas, par exemple [allez ici] (http://demos.flesler.com/jquery/scrollTo/) et essayez ceci dans la console: '$ ('# relative- selector '). unbind(). click (function() {$ (' # volet-cible '). stop(). scrollTo (' li: eq (344) ', 800);}); 'vous verrez le "Sélecteur Relatif" ne saute pas. –

0

Quelque chose comme $('#dataContainer').scrollTo("[attr=NEW]");

+0

Comment cela fonctionne-t-il? – user113716