Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL][PHP][JavaScript] Ukrywanie / Wyświetlanie list rozwijalnych
Forum PHP.pl > Forum > Przedszkole
Gość
Witam,

Na początku wspomnę, że przeszukałem wiele stron internetowych i ciężko jest mi znaleźć rozwiązanie mojego problemu. Podkreślam, że z jQuery jestem początkującym. Mimo to bardzo bym prosił o pomoc, nie chodzi o to, że nie chce mi się szukać i próbować samemu, z czego bardzo proszę o wyrozumiałość.

Chodzi dokładnie o to, by zrobić dwie listy rozwijalne lista_1 i lista_2 (select). Następnie przy zaznaczeniu którejś opcji w lista_1, poniżej ma pojawić się lista_2. Ważnym jest by do bazy danych została przekierowana wartość value, żeby w drugiej liście rozwijalnej wyświetlały się prawidłowe pozycje, co pewnie idzie za użyciem ajaxa (?).

Jeżeli ktoś już kiedyś pisał podobny kod, bardzo bym prosił o pomoc.

Pozdrawiam.
hubson87
Fragment pliku na stronie gdzie sa selecty:
Funkcja jQuery
[JAVASCRIPT] pobierz, plaintext
  1. <script type="text/javascript">
  2. $('document').ready(function() {
  3. $("#rodzaj").change(function() // akcja, czyli zmiana value selecta o id 'rodzaj'
  4. {
  5. var id=$(this).val(); // przypisanie wartosci do zmiennej id
  6. var ds = 'id='+ id; // i zapisanie jej w odpowiedniej formie
  7. $.ajax
  8. ({
  9. type: "POST",
  10. url: "ajax/select.php", // sciezka do pliku ajax
  11. data: ds, // wysylane dane
  12. cache: false,
  13. success: function(html)
  14. {
  15. $("#dost").html(html); // wynik odpowedzi czyli uzupelnienie drugiego pola select (id='dost') odpowiednimi wartosciami
  16. }
  17. });
  18. });
  19. ....
[JAVASCRIPT] pobierz, plaintext


i same selecty

  1. <tr>
  2. <td>Rodzaj dostawcy:</td>
  3. <td><select class="s" id="rodzaj" name="rodzaj">
  4. <option value="0">--Wybierz--</option>
  5. <option value="1">Wewnętrzny</option>
  6. <option value="2">Zewnętrzny</option>
  7. </select></td>
  8. <td>Dostawca:</td><td><select class="s" id="dost" name="dost"><option value="0">--Wybierz--</option></select></td>
  9. </tr>


i teraz zawartosc pliku select.php (ajaxowego)
  1. <?php
  2. include '../connect.php';
  3. if($_POST['id'])
  4. {
  5. $id=$_POST['id'];
  6. if($id==1){ // jesli id == 1 to pierwsze zapytanie
  7. echo '<option value="">--Wybierz--</option>';
  8. $sql=mysql_query("select id_wydzial,nazwa from produkcja");
  9. while($row=mysql_fetch_array($sql))
  10. {
  11. $id=$row['id_wydzial'];
  12. $data=$row['nazwa'];
  13. echo '<option value="'.$id.'">'.$data.'</option>';
  14. }
  15. }
  16. else{ // w przeciwnym razie drugie zapytanie
  17. echo '<option value="">--Wybierz--</option>';
  18. $sql=mysql_query("select id_dostawca,nazwa from dostawca");
  19. while($row=mysql_fetch_array($sql))
  20. {
  21. $id=$row['id_dostawca'];
  22. $data=$row['nazwa'];
  23. echo '<option value="'.$id.'">'.$data.'</option>';
  24. }
  25. }
  26. }
  27.  
  28.  
  29. ?>


To by bylo na tyle



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.