Ich habe durch die "Wenn Elternelement hat x, fügen Sie y CSS zu Kind" Fragen, fand aber keine Antwort für meinen Fall.jQuery - Wie CSS zu einem Elternelement hinzufügen, wenn Kindelement bestimmte CSS-Klasse
Ich habe eine Seite mit einigen Eingabefeldern in mehreren div-Elementen. Einige dieser div-Elemente haben eine displayNone-Klasse, die das Element verbirgt. Aber das Elternteil dieses Elements hat einen grauen Hintergrund. So ist das Element self versteckt, aber ich sehe immer noch den grauen Hintergrund. Ich möchte das DisplayNone dem Eltern-Div hinzufügen, damit der graue Hintergrund ebenfalls ausgeblendet wird.
Auch das Hinzufügen der Klasse displayNone zum übergeordneten div sollte keine Auswirkung auf das andere Element div (mit der Klasse greyBackground) haben.
Ich bin nicht in der Lage, das HTML zu ändern, also brauche ich eine jQuery/Javascript-Lösung.
Ich war so etwas wie
$('.theClass').each(function() {
if($("div").hasClass("displayNone")){
document.getElementById("idElement").style.display = "none";
}
});
denken, aber ich brauche, ohne eine ID, die Klasse zu einem div-Elemente hinzuzufügen. Hier
ist ein Code
CSS
.formcheckbox {
background: #F2F2F2;;
}
.greyBackground{
background: #F2F2F2;;
}
.displayNone {
display: none;
}
HTML
<div class="greyBackground">
<label>Label</label>
<input type="text"/>
</div><br>
<div class="fieldgrp">
<div class="formcheckbox">
<div class="displayNone">
<div class="field-input ">
<div class="field">
<input name="abc" value="10" id="10" type="checkbox">
<label id="_10" for="10">10 items </label>
</div>
<div class="field">
<input name="abc" value="20" id="20" type="checkbox">
<label id="_20" for="20">20 items </label>
</div>
<div class="field">
<input name="abc" value="50" id="50" type="checkbox">
<label id="_50" for="50">50 items </label>
</div>
</div>
</div>
</div>
</div>
Und die FIDDLE
Aus Beschreibung _Wenn das Elternelement x enthält, fügen Sie y css zu child_ '$ ('. ParentEl .childEl') hinzu. Hide()' – Tushar
Sie können das Elternelement mithilfe der parentElement-Eigenschaft durchqueren .. this.parentElement.style.display = ' keiner';" –