• 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]

0 głosów
72 wizyt
pytanie zadane 8 listopada 2018 w JavaScript, jQuery, AJAX przez Michał Samolewski Obywatel (1,830 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,250 p.)
input.value = '';

?

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

Podobne pytania

0 głosów
2 odpowiedzi 97 wizyt
pytanie zadane 6 stycznia w JavaScript, jQuery, AJAX przez 42savage Obywatel (1,140 p.)
0 głosów
1 odpowiedź 85 wizyt
pytanie zadane 27 kwietnia 2018 w JavaScript, jQuery, AJAX przez Apper97 Obywatel (1,270 p.)
Porady nie od parady
Forum posiada swój własny chat IRC, dzięki któremu będziesz mógł po prostu pogadać z innymi Pasjonatami lub zapytać o jakiś problem. Podstrona z chatem znajduje się w menu pod ikoną człowieka w dymku.IRC

63,362 zapytań

109,629 odpowiedzi

229,035 komentarzy

44,308 pasjonatów

Przeglądających: 188
Pasjonatów: 6 Gości: 182

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...