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

Funkcja czyszcząca value inputów [JS]

Aruba Cloud - Virtual Private Server VPS
0 głosów
403 wizyt
pytanie zadane 8 listopada 2018 w JavaScript przez Michał Samolewski Bywalec (2,240 p.)
edycja 8 listopada 2018 przez Michał Samolewski

Cześć,

mam formularz HTML dodający osoby do bazy danych. W formularzu mam możliwość kliknięcia checkboxa, że dana osoba otrzymała nagrodę nobla. W js napisałem skrypt który powoduje że po zaznaczeniu tego checkboxa pojawiają się pod nim 2 dodatkowe inputy; 'data uzyskania' oraz 'za co?'. Skrypt zawiera również zapis dotyczący znikania tych inputów po odznaczeniu checkboxa.

HTML:

<div class="form-check">
  <input type="checkbox" id="nagrodanobla" name="nagrodanobla" value="1" class="form-check-input" onclick="nagrodanobla_ext()">
  <label for="nagrodanobla">Nagroda nobla</label>
</div>

<div class="form-group nagrodanobla_ext" style="display:none;">
  <input type="text" onfocus="(this.type='date')" placeholder="Data uzyskania" class="form-control"  name="nagrodanobla_od">
</div>
<div class="form-group nagrodanobla_ext" style="display:none;">
  <input type="text" placeholder="Za co?" class="form-control" name="nagrodanobla_zaco">
</div>

JS:

function nagrodanobla_ext(){

  var checkbox = document.getElementById("nagrodanobla");

  if(checkbox.checked==true)
  {
    var x = document.getElementsByClassName('nagrodanobla_ext');
    var i;
    for (i = 0; i < x.length; i++)
    {
        x[i].style.display = 'block';
    }
  }

  else if(checkbox.checked==false)
  {
    var z = document.getElementsByClassName('nagrodanobla_ext');
    var y;
      for (y = 0; y < z.length; y++)
      {
          z[y].style.display = 'none';
      }
  }
}

Mój problem polega na tym że po wpisaniu czegoś do tych dodatkowych inputów, a następnie odznaczeniu checkboxa w inputach pozostaje to co w nich napisałem, a chcę żeby odznaczenie checkboxa powodowało wyczyszczenie tych inputów. Jaki zapis muszę dodać do mojego skryptu JS żeby to tak działało? Wiem że trochę chaotycznie, ale chyba rozumiecie co mam na myśli. ;p

5!

1 odpowiedź

0 głosów
odpowiedź 8 listopada 2018 przez k.wichura Pasjonat (19,870 p.)
input.value = '';

?

komentarz 8 listopada 2018 przez Michał Samolewski Bywalec (2,240 p.)
Ale gdzie to umieścić w moim skrypcie? Jestem naprawdę zielony z JS

Podobne pytania

0 głosów
2 odpowiedzi 319 wizyt
pytanie zadane 6 stycznia 2019 w JavaScript przez 42savage Bywalec (2,630 p.)
0 głosów
1 odpowiedź 299 wizyt
pytanie zadane 14 grudnia 2022 w JavaScript przez TOWaD Mądrala (6,420 p.)
0 głosów
1 odpowiedź 234 wizyt
pytanie zadane 27 kwietnia 2018 w JavaScript przez Apper97 Obywatel (1,380 p.)

93,331 zapytań

142,323 odpowiedzi

322,400 komentarzy

62,667 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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...