Ich habe dies fast abgeschlossen, stecke aber auf einem fortgeschrittenen Selektor fest. Ich versuche, ein Etikett neben einem Optionsfeld auszuwählen, aber es ist etwas komplexer.

Ich habe ein Auswahlfeld. Nur Optionsfelder (und ihre Geschwisterbezeichnungen), bei denen der Wert der Auswahl mit dem Namen (auch einem Teil davon) des Optionsfelds übereinstimmt.

Ich habe eine JS-Geige eingerichtet. Was ich tun möchte, ist die Auswahl von Januar. Alles außer Jan sollte ausgeblendet sein, und wenn ich Februar auswähle, sollte sich dies ändern. Ich versuche dies nur mit dem Namen und ohne zusätzliche Klassen zu tun, aber wenn es darauf ankommt, kann ich sie hinzufügen.

http://jsfiddle.net/alpha1beta/G9Sz2/2/

Unten ist mein Arbeitswähler, um das Optionsfeld zu erhalten, und ich sehe mir jetzt an, wie ich das + label daneben bekomme

$('.radio([name="insights[interview_questions[' + curr_sel + ']]"])').css('display','inline');

Danke im Voraus!

0
alpha1 25 Nov. 2013 im 19:58

3 Antworten

Beste Antwort

Versuchen

var $radios = $('.radio'), $all = $radios.add($radios.nextUntil('.radio'));
$("#interview_month").change(function () {
    var $mon = $radios.filter('.radio[name="insights[interview_questions[' + this.value + ']]"]');
    var $cur = $mon.add($mon.nextUntil('.radio')).show();
    $all.not($cur).hide()
}).change();

Demo: Fiddle

1
Arun P Johny 25 Nov. 2013 im 16:07

Versuche dies:

$("#interview_month").change(function () {
  $('.radio , label').hide();
  var sel = '.radio[name*="' + $("#interview_month").val() + '"]';
  $(sel).add(sel+'+label').css('display', 'inline');  

});

0
Aamir Afridi 25 Nov. 2013 im 16:25

Möglicherweise möchten Sie die Funktion next () überprüfen. Sie gibt die nächste Geschwister

1
user1047100user1047100 25 Nov. 2013 im 16:05