• 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
62 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 (17,810 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 89 wizyt
pytanie zadane 6 stycznia w JavaScript, jQuery, AJAX przez 42savage Użytkownik (750 p.)
0 głosów
1 odpowiedź 82 wizyt
pytanie zadane 27 kwietnia 2018 w JavaScript, jQuery, AJAX przez Apper97 Obywatel (1,270 p.)
Porady nie od parady
Pytania na temat serwisu SPOJ należy zadawać z odpowiednią kategorią dotyczącą tej strony.SPOJ

60,207 zapytań

105,878 odpowiedzi

219,906 komentarzy

32,422 pasjonatów

Przeglądających: 197
Pasjonatów: 16 Gości: 181

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.

...