⊗jsPrTstHQA 30 of 62 menu

Тест с въпроси и отговори в HTML код на JavaScript

В този и в няколко следващи урока ние с вас ще се заемем със създаване на тестове с въпроси и отговори. Ще започнем с най-простите варианти и постепенно ще усложняваме.

Нека за начало искаме да направим набор от въпроси, на всеки от които е възможен само един отговор. Нека отговорите се въвеждат от потребителя в инпути под самите въпроси.

Нека илюстрирам написаното с HTML код:

<div id="test"> <div> <p>въпрос 1?</p> <input> </div> <div> <p>въпрос 2?</p> <input> </div> <div> <p>въпрос 3?</p> <input> </div> </div>

Както виждате, имаме въпроси и инпути за отговори. Остава да измислим къде ще съхраняваме правилните отговори.

Най-простото, което можем да измислим - това е да съхраняваме отговорите директно в HTML кода на инпутите, в някакъв data- атрибут:

<div id="test"> <div> <p>въпрос 1?</p> <input data-right="отговор 1"> </div> <div> <p>въпрос 2?</p> <input data-right="отговор 2"> </div> <div> <p>въпрос 3?</p> <input data-right="отговор 3"> </div> </div>

Следващият нюанс, който трябва да обмислим: в кой момент ще извършваме проверката на отговорите за правилност? Тук може да се предложат два варианта: или всеки инпут веднага след въвеждане на отговор в него да проверява дали този отговор е правилен, или да има бутон, при натискането на който ще се проверяват отговорите на всички въпроси наведнъж.

Независимо кой вариант изберем, нека, ако отговорът е правилен, границата на инпута да се оцветява в зелен цвят, а ако е неправилен - в червен. Нека направим за това съответните CSS класове:

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

Направете така, че въвеждането на отговор в инпут да завършва с натискане на клавиша Enter. Нека в този случай инпутът веднага проверява отговора за правилност.

Модифицирайте вашия код така, че проверката на отговорите да се извършва при натискане на бутон.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне