Moi elikkäs miten voisin tarkistaa lomakkeesta että ainakin yksi "CHECKBOX" olisi valittuna javascriptin avulla? Lisään tuohon alle minun HTML osion jos apua saisi. Olen monta eri tapaa yrittänyt mikään ei ole toiminut.
<form id="formi" action="index.html" method="post">
<div class="lomakkeet">
<label for="onkoMatelijaa"><b>Onko sinulla matelijaa ja jos on niin millainen?</b></label><br><br>
<input id="onkoMatelijaa_ei" type="checkbox" name="onkoMatelijaa_vastaus" value="">
<label for="onkoMatelijaa_ei">Minulla ei ole omaa matelijaa</label><br>
<input id="onkoMatelijaa_kaarme" type="checkbox" name="onkoMatelijaa_vastaus" value="">
<label for="onkoMatelijaa_kaarme">Käärme</label><br>
<input id="onkoMatelijaa_lisko" type="checkbox" name="onkoMatelijaa_vastaus" value="">
<label for="onkoMatelijaa_lisko">Lisko</label><br>
<input id="onkoMatelijaa_sammakko" type="checkbox" name="onkoMatelijaa_vastaus" value="">
<label for="onkoMatelijaa">Sammakko</label><br>
<input id="onkoMatelijaa_kilpikonna" type="checkbox" name="onkoMatelijaa_vastaus" value="">
<label for="onkoMatelijaa_kilpikonna">Kilpikonna</label><br>
<input id="onkoMatelijaa_muu" type="checkbox" name="onkoMatelijaa_vastaus" value="">
<label for="onkoMatelijaa_muu">Jokin muu:</label><br>
<label for="lisatietoja">Mikä?</label><br>
<textarea id="tekstiKentta" name="lisatietoja" rows="8" cols="60" placeholder="Kerro tässä muista mahdollisista omistamistasi lemmikeistäsi"></textarea><br>
<br>
</div>
<div class="buttons">
<button type="button" name="laheta" onclick="tarkista(formi)">Lähetä</button>
</div>
<div class="buttons">
<button type="reset" name="tyhjenna" onclick="tyhjenna()">Tyhjennä</button>
</div>
</form>
Apua javascriptillä tarkistamaan lomake
1
252
Vastaukset
- Anonyymi
Kokeile ajaa alla oleva esimerkki, jos sitä kautta löydät johtolangan pään tehtävääsi.
<p>Valitse lemmikkisi:</p>
<p><label for="lemmikki-1"><input type="checkbox" name="onkoMatelijaa_vastaus" value="kilpikonna" id="lemmikki-1" />Kilpikonna</label></p>
<p><label for="lemmikki-2"><input type="checkbox" name="onkoMatelijaa_vastaus" value="käärme" id="lemmikki-2" />Käärme</label></p>
<p><label for="lemmikki-3"><input type="checkbox" name="onkoMatelijaa_vastaus" value="sammakko" id="lemmikki-3" />Sammakko</label></p>
<button id="subtn">Näytä lemmikit</button>
<h3 id="tulos"></h3>
<script>
function getSelectedCheckboxValues(name) {
const checkboxes = document.querySelectorAll(`input[name="${name}"]:checked`);
let values = [];
checkboxes.forEach((checkbox) => {
values.push(checkbox.value);
});
if(typeof(values[0]) != "undefined") {
document.getElementById("tulos").innerText="Vähintään yksi lemmikki on valittu!";
document.getElementById("tulos").style.color="green";
} else {
document.getElementById("tulos").innerText="Ei lemmikkejä!";
document.getElementById("tulos").style.color="red";
}
}
const subtn = document.querySelector("#subtn");
subtn.addEventListener("click", (event) => {
getSelectedCheckboxValues("onkoMatelijaa_vastaus");
})
</script>
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Työeläkeloisinta Suomen suurin talousongelma
Työeläkeloisinta maksaa vuodessa lähes 40 miljardia euroa, josta reilut 28 miljardia on pois palkansaajien ostovoimasta.2082479Veroaste on Suomessa viitisen prosenttiyksikköä liian matala
Veropohjaa on rapautettu käytännössä koko kulunut vuosituhat, jonka vuoksi valtion menoja on jouduttu rahoittamaan velka32099Israel euroviisujen 2.
Israel sai taas eniten yleisöääniä. Suomesta täydet 12 pistettä, poliittinen ”ammattiraati” antoi 0 pistettä. Hyvä Is3171837- 951605
Euroviisut ei enää niin musiikkikilpailu?
Kappaleiden taso ei enää ole mikä sijoituksen ratkaisee.Eikö kukaan ihmettele että Israel pärjää lähes joka vuosi kisois831485Mun mielestäni on tosi loukkaavaa
Nainen, että luulet palatan typeriä, sekavia ja ilkeitä viestejä mun kirjoittamiksi. Mä en ole katkera, epätoivoinen, ra2001230- 671170
- 251111
- 481027
Rakas nainen ymmärsin
Että minun pitää pitää kiinni sinusta. Haluan, että sä olet onnellinen. Olet mulle se oikea ja mä sulle. Rakastan Sua yl73996