Autor | Zpráva | ||
---|---|---|---|
kuba123 Profil * |
Mám takovou specifickou situaci týkající se selektů.
Mám tři selekty vedle sebe, když vyberu například první option v prvním selektu tak se vyberou i v ty další options. Příklad První select má options s hodnotama auto strom dítě Druhý select má options s hodnotama das Auto der Baum das Kinder Třetí select má options s hodnotama car tree child Dejme tomu že správná volba je choice=0 . Takže bych potřeboval příkaz na vrácení těch tří textů třeba v tomto stylu: text[0] = "auto"; text[1] = "das Auto"; text[2] = "car"; V případě že choice bude 1 pak bych obdržel hodnoty: text[0] = "strom"; text[1] = "der Baum"; text[2] = "tree"; Ještě počítám s tím, že ty selekty tam mohou být třeba jen dva anebo tři, počet není pevně stanovený. Rodič je div a když bych chtěl vrátit všechny options tak to dělám takto var options = parent().children("select").children("option"); |
||
Kcko Profil |
#2 · Zasláno: 1. 7. 2013, 21:34:01
|
||
kuba123 Profil * |
#3 · Zasláno: 2. 7. 2013, 10:41:24 · Upravil/a: kuba123
Kcko:
Skvělé. Díky. Ještě kód postnu sem, abych to měl po ruce var choice = 2; // vybrané options z kazdeho selectu var data = []; var parent = $(this).parent().parent(); parent.each(function(){ var $this = $(this); var $text = $this.children().eq(choice - 1).text(); data.push($text); }); vlastně.. parent.children("select").each .. |
||
kuba123 Profil * |
#4 · Zasláno: 3. 7. 2013, 10:11:54
Jsem našel ještě lepší řešení, vzhledem k situaci, kdy potřebuju vybrat volbu ne podle pořadí ale podle odpovídající hodnoty
var getText = function(select, optVal){ var data=[]; select.each(function(){ var $this = $(this); var text = $this.children("[value=\""+optVal+"\"]").text(); data.push(text); }); return data; } |
||
Časová prodleva: 11 let
|
0