• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

getElementsByClassName nie działa w bootstrapie

–1 głos
223 wizyt
pytanie zadane 23 października 2018 w JavaScript przez Michał Samolewski Bywalec (2,240 p.)

Cześć,

napotkałem dziwny problem którego nie umiem wyjaśnić.

Tworzę formularz z checkboxami. Postanowiłem opracować mechanizm, że po zaznaczeniu danego checkboxa będą się pod nim wyświetlać inputy z dodatkowymi danymi do wprowadzenia. Analogicznie po odznaczeniu checkboxa te inputy mają zniknąć. Udało mi się to zrobić bezproblemowo przy jednym inpucie:

<input type="checkbox" name="s_podstawowe" value="Szkolenie podstawowe" class="form-check-input" onclick="document.getElementById('s_podstawowe1').style.display = 'block'; if(this.checked==false){document.getElementById('s_podstawowe1').style.display = 'none';}" value="yes" />
            <label for="s_podstawowe">Szkolenie podstawowe</label>
            
            <input type="text" id="s_podstawowe1" placeholder="Data uzyskania" class="form-control" style="display:none;" name="s_podstawowe_od">

Problem pojawił się kiedy postanowiłem dodać większą ilość tych 'ukrytych' inputów. Jak wiadomo, getElementById działa tylko dla jednego ID, w związku z tym postanowiłem użyć getElementsByClassName. Niestety, w tym przypadku po zaznaczeniu checkboxa nic pod spodem nie chce się pojawić. Kod wygląda następująco:

<input type="checkbox" name="s_podstawowe" value="Szkolenie podstawowe" class="form-check-input" onclick="document.getElementsByClassName('s_podstawowe_h').style.display = 'block'; if(this.checked==false){document.getElementsByClassName('s_podstawowe_h').style.display = 'none';}" value="yes" /> 
<label for="s_podstawowe">Szkolenie podstawowe</label> 

<input type="text" placeholder="Data uzyskania" class="form-control s_podstawowe_h" style="display:none;" name="s_podstawowe_od"> 
<input type="text" placeholder="Numer zaświadczenia" class="form-control s_podstawowe_h" style="display:none;" name="s_podstawowe_nr">

Gdzie popełniam błąd? 

Dzięki wielkie z góry.

Michał

1 odpowiedź

0 głosów
odpowiedź 23 października 2018 przez Ignobiles Obywatel (1,800 p.)
wybrane 24 października 2018 przez Michał Samolewski
komentarz 24 października 2018 przez Michał Samolewski Bywalec (2,240 p.)
Dobra, jednak jestem głupi. Przepraszam za bezsensowne pytanie i dzięki za odpowiedź. :p

Podobne pytania

0 głosów
1 odpowiedź 625 wizyt
pytanie zadane 14 grudnia 2022 w JavaScript przez Dawidziu Bywalec (2,630 p.)
0 głosów
1 odpowiedź 347 wizyt
0 głosów
1 odpowiedź 202 wizyt

93,631 zapytań

142,556 odpowiedzi

323,056 komentarzy

63,139 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 2900p. - dia-Chann
  2. 2870p. - DziarnowskiJ
  3. 2827p. - Łukasz Piwowar
  4. 2783p. - raydeal
  5. 2758p. - Adrian Wieprzkowicz
  6. 2713p. - rucin93
  7. 2579p. - Łukasz Eckert
  8. 2523p. - Maurycy W
  9. 2459p. - CC PL
  10. 2082p. - Michal Drewniak
  11. 1885p. - robwarsz
  12. 1851p. - Mariusz Fornal
  13. 1811p. - rafalszastok
  14. 1600p. - Rafał Trójniak
  15. 1588p. - Tomasz Bielak
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...