• 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

VPS Starter Arubacloud
–1 głos
120 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ź 276 wizyt
pytanie zadane 14 grudnia 2022 w JavaScript przez Dawidziu Bywalec (2,630 p.)
0 głosów
1 odpowiedź 155 wizyt
0 głosów
1 odpowiedź 133 wizyt

92,775 zapytań

141,703 odpowiedzi

320,560 komentarzy

62,109 pasjonatów

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.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...