Hi everyone! I'm the author of code.mu :)
I'd love to chat with my non-Russian audience. I'm looking for your feedback on the site and the translation quality. Let's chat:)
⊗jsPrTstHQA 30 of 62 menu

Test s otázkami a odpoveďami v HTML kóde na JavaScript

V tomto a v niekoľkých nasledujúcich lekciách sa budeme venovať vytvoreniu testov s otázkami a odpoveďami. Začneme s najjednoduchšími variantmi a budeme postupne komplikovať.

Nechajme na začiatok urobiť sadu otázok, na každú z ktorých je možná iba jedna odpoveď. Nech sú odpovede zadané používateľom do inputov pod samotnými otázkami.

Ilustrujme napísané HTML kódom:

<div id="test"> <div> <p>otázka 1?</p> <input> </div> <div> <p>otázka 2?</p> <input> </div> <div> <p>otázka 3?</p> <input> </div> </div>

Ako vidíte, máme otázky a inputy pre odpovede. Ostáva vymyslieť, kde budeme ukladať správne odpovede.

Najjednoduchšie, čo sa dá vymyslieť - je ukladať odpovede priamo v HTML kóde inputov, v nejakom data- atribute:

<div id="test"> <div> <p>otázka 1?</p> <input data-right="odpoveď 1"> </div> <div> <p>otázka 2?</p> <input data-right="odpoveď 2"> </div> <div> <p>otázka 3?</p> <input data-right="odpoveď 3"> </div> </div>

Ďalšia nuansa, ktorú treba premyslieť: v akom momente vykonáme kontrolu odpovedí na správnosť? Tu možno navrhnúť dva varianty: buď nech každý input okamžite po zadaní odpovede doň skontroluje správnu odpoveď, alebo nech je tlačidlo, po kliknutí na ktoré sa skontrolujú odpovede na všetky otázky naraz.

Nech už zvolíme ktorýkoľvek variant, ak je odpoveď správna, tak okraj inputu zafarbime na zelenú farbu, a ak nesprávna - na červenú. Urobme pre to zodpovedajúce CSS triedy:

.right { border: 1px solid green; } .wrong { border: 1px solid red; }

Urobte tak, aby zadanie odpovede do inputu sa dokončilo stlačením klávesy Enter. Nech v tomto prípade input okamžite skontroluje odpoveď na správnosť.

Upravte váš kód tak, aby kontrola odpovedí sa vykonala po kliknutí na tlačidlo.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť