Voici mon html:syntaxe du sélecteur jQuery question
<form>
<dl>
<dt> </dt>
<dd><input type="hidden"></dd>
<dt>Dont hide this one</dt>
<dd><input type="text"></dd>
</dl>
</form>
J'utilise jQuery pour cacher les éléments dt
/dd
où le type d'entrée est cachée avec ce code:
$("input[type=hidden]").each(function() {
$(this).parent().hide().prev().hide();
});
Mais je aussi seulement vouloir appliquer à dt
s où le texte est
. Comment puis-je faire ce genre de sélection?
Mise à jour: Peut-être que je besoin de préciser: Quelques personnes ont posté des réponses où il se cache le dd avant de vérifier si le contenu du dt est également
. Les deux conditions doivent être vraies avant de masquer le dt et le dd.
Solution finale: Voici ce que j'ai fini avec:
$('input[type=hidden]').filter(function() {
return $(this).closest('dd').prev('dt').html() === ' ';
}).each(function() {
$(this).closest('dd').hide()
.prev('dt').hide();
});
Désolé, mal compris ce que vous essayiez de faire. Mis à jour maintenant – cobbal
parfait! Je vous remercie! – Andrew
Comme les gens ont déjà posté des réponses ... et je ne peux pas encore commenter le code de cobbal est manquant ceci: $ ("input [type = hidden]"). Each (function() {$ (this) .parent(). hide(). prev(). filter (fonction() {return $ (this) .html() === " ";}). hide(); }); retourner – Skawful