hide() radio-Taste *und* seinem label text in jquery
Werde ich wieder über ein Aktuelles Projekt, das aussortieren von Fragen der Zugänglichkeit und machte Sie sicher, dass alle form-Elemente hatte-Etiketten. Setzen Sie den label-text in eine tag-verursacht ein problem mit notdürftigem code, den ich geschrieben hatte, vor.
Grundsätzlich, wenn Sie einen radio-button und seine Beschriftung:
<label for="zone_r1"><input type="radio" name="zone" id="zone_r1" value="NY" />New York</label>
Und Sie jquery verwenden, um es zu verstecken wie so:
$('#zone_r1').hide();
Den eigentlichen Taste ist ausgeblendet, aber nicht den label-text. Ursprünglich machte ich eine Spanne für den label-text und versteckte sich, dass wie so:
<input id="NY" type="radio" name="zone" value="NY" /><span id="nyTXT">New York</span>
und
$('#NY').hide();
$('#nyTXT').hide();
Irgendwelche Ideen? Ich lieber nicht verwenden, um die Unordnung und kann es nicht bestätigen mit der Spanne in der Bezeichnung, aber vielleicht bin ich übermäßig eifrig.
Du musst angemeldet sein, um einen Kommentar abzugeben.
funktioniert bei mir
Ich denke, das sollte für Sie arbeiten
Dieser wählt das label mit dem Attribut "for" - set auf den radio-button, den Sie suchen, sowie die radio-Taste selbst, und versteckt Sie beide
was
$('label:has(#zone_r1)').hide();
Für die ersten radio-button, können Sie verstecken die eigentliche Taste und dann seine Eltern:
Für den zweiten Fall können Sie verstecken Sie die Taste und die "weiter" Geschwister:
Können Sie dies tun:
1.) Definieren Sie die radio-Taste, Eingabe ohne einen umgebenden label.
2.) Wickeln Sie die option "text" (text auf der rechten Seite des radio-button) in einem
<span>
.3.) Verwenden Sie diese jQuery-Anweisung:
$("input:radio:not(:checked), input:radio:not(:checked) + span").hide();
Dieser wird wählen Sie die radio-Taste und der text rechts neben dem radio-button und ausblenden.
Setzen Sie einfach 'label' Selektor, Eltern:
Sehen mein jsFiddle Beispiel
[id=...]
. Das ist eine ID. Sie wissen:#zone_r1
.verstecken radio-button-container oder TD-basierend auf dem Wert
jQuery("input[type=radio][value='EU2']").parent().hide();