Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: duzo select-ow problem z ustawieniem value
Forum PHP.pl > Forum > XML, AJAX
marczak
Sprawa wygląda następująco :
Mam okno które posiada wiele selectów- (w zależności do siedzi w bazie). I teraz chcę sobie je dynamicznie dodać i poustawiać odpowiednie wartości.
Selecty zostają dodane, uzupełnione jednak mam problem z nadaniem pozycji która ma zostać zaznaczona.

Kod wygląda tak:
w przypadku $.ajax success:
  1. for(x=0;x<obj.length; x++)
  2. {
  3. id = obj[x].id_produkt_lista;
  4. id_status = obj[x].id_status;
  5.  
  6. $("#tab").find('tbody').append(
  7. "<tr id='"+id+"'><td id ='' class =''>"+obj[x].nazwa_produkt+"</td>"
  8. +"<td id=''>"
  9. +"<select class = 'sel_' value= "+id_status+" id="+id+"></select>"
  10. +"</td>"
  11. +"</tr> ");
  12.  
  13. }
  14. addSelect();

To dodaje mi selecy ustawia im odpowiednie id.
Funkcja addSelect :
  1.  
  2. function addSelect()
  3. {
  4.  
  5. $('.sel_')
  6. .find('option')
  7. .remove()
  8. .end();
  9.  
  10. $.ajax({
  11. type: "POST",
  12. url: "",
  13. data:{
  14. option: 'com_zamowienia',
  15. view: 'zamowienia_lista',
  16. task: 'getStatusy'
  17. },
  18. success: function(data){
  19.  
  20. var obj = $.parseJSON(data);
  21. var tabela = [];
  22. for (x=0; x<obj.length; x++) {
  23. tabela[x] =
  24. obj[x].nazwa;
  25.  
  26. }
  27. var zmienna =0;
  28. $.each(tabela, function(key, value) {
  29. $('.sel_')
  30. .append($('<option>', { value : obj[zmienna].id_status })
  31. .text(tabela[zmienna])
  32. .css("color", "#"+obj[zmienna].kolor)
  33.  
  34. );
  35. zmienna++;
  36. });
  37. }
  38. });
  39.  
  40. }

Funkcja uzupełnia mi selecy oraz ustawia odp. kolor dla wartości selecta.
Teraz nie wiem jak każdego ustawić dobrze? mam id_status -> wartość jaka ma zostać ustawiona oraz id -> id ->który select ma zostać ustawiony na tą wartość
vermis
w funkcji $.each() jak dodajesz kolejny 'option' to sprawdzasz czy jego id powinno być zaznaczone i dodajesz mu atrybut 'selected="selected"'
marczak
tylko ze ja addSelect();wywołuje po wyjściu już z pętli. (W pętli for gdzie mi dodaje selecty gdybym ją miał wewnątrz to by mi optiony powielało).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.