2012-12-07 11 views
9

Pracowałem nad tym i trochę utknąłem. Nie mogę znaleźć bezpośredniej odpowiedzi, więc zapytam.jquery lub JS utwórz element potomny i przypisz ID

Tworzę listę opcji z połączenia JSON. Stworzyłem elementy potomne, ale nie mogę dodać unikalnych identyfikatorów (przechowywanych w JSON) do każdego elementu. Kiedy utworzę identyfikator wewnątrz $ .each JSON, otrzymam ostatni identyfikator z połączenia przypisanego do wszystkich opcji.

Dzięki

$("#fDistList").append('<option>' + item.GROUP_NAME + '</option>'); 
$("option").attr('id', item.ID); 

Odpowiedz

3

Spróbuj

$("#fDistList").append('<option id="'+ item.ID + '">' + item.GROUP_NAME + '</option>'); 

Kiedy robisz

$("option").attr('id', item.ID); 

jesteś ponownego wybierania wszystkie option elementy i ustawienie ich atrybut ID.

+0

dzięki, że był to ... podwójne cudzysłowy wewnątrz apostrofów nie było nawet biorąc pod uwagę, że jest to opcja, ale to sprawia, teraz tyle zmysłów. – atlMapper

3

Można zrobić to w ten sposób, w jednym przejściu

$('<option/>',{ 
     text: item.GROUP_NAME, 
     id:item.ID 
    }).appendTo('#fDistList'); 
+0

Czy masz link do dokumentacji? Muszę dowiedzieć się więcej o tym pojedynczym przebiegu, o wiele czystszym. – atlMapper

+0

@atlMapper, zobacz drugą wersję http://api.jquery.com/jquery/#jQuery2 do tworzenia elementów z mapą właściwości oraz http://api.jquery.com/appendTo/ do dołączania do elementów –

Powiązane problemy