powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Не засчитывает ответы теста
2 сообщений из 2, страница 1 из 1
Не засчитывает ответы теста
    #38905161
Артемон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребят, нужна помощь в создании теста на javascript. Не получается сделать вопросы с вводом текста и множеством вариантов ответов. Как это сделать. В javascript не силен.
...
Рейтинг: 0 / 0
Не засчитывает ответы теста
    #38905414
Артемон,

тут у 5 и 8 вопросов надо поменять цветовую гамму, а то не видно цифры у номеров вопросов... Также я убрал бы нумерацию у ответов, т.е. вместо
Код: html
1.
2.
3.
1. alert('Привет')
2. document.write('Привет')
3. document.print('Привет')

сделать просто
Код: html
1.
2.
3.
alert('Привет')
document.write('Привет')
document.print('Привет')


АртемонНе получается сделать вопросы с вводом текста и множеством вариантов ответов Варианты ответов лучше хранить в массиве, там и для единичных и для множества - один алгоритм будет.
Правильные варианты ответов в массиве answ. Например, для первого вопроса - надо одновременно поставить галочки у 1 и 4 варианта
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
<!DOCTYPE HTML>
<html> <head> <title>Вопросы</title>
<style>
* {margin:0; padding:0; font:15px Arial;}
.question {
  padding:10px;
  background:#4682B4;
  color:#fff;
}
.answer {margin-bottom:24px;}
.answer label{
  display:block;
  padding:5px 5px 2px 10px;
}
.cmd {
  border:1px solid #d1d1d1;
  border-radius:4px;
  font:11px Tahoma,Arial,'MS Sans Serif','sans-serif';
  cursor:pointer;
  width:70px;
  margin-left:3px;
  padding:4px 5px;
  text-align:center;
  background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUxJSIgc3RvcC1jb2xvcj0iI2VjZWNlYyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlNmU2ZTYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
}
.cmd:active {padding:5px 4px 3px 6px;}
#res {
  margin:20px 1px;
  padding:10px 5px;
  background:#FFD700;
}
</style>
<body>
<div class="question">1. Кто убил Сару Лэнс?</div>
<div class="answer">
  <label><input type="checkbox"> Тея Куин</label>
  <label><input type="checkbox"> Малькольм Мерлин</label>
  <label><input type="checkbox"> Слейд Уилсон</label>
  <label><input type="checkbox"> Чего-то темнят сценаристы</label>
</div>
<div class="question">2. Что случилось с Фелисити?</div>
<div class="answer">
  <label><input type="checkbox"> Обнаглела</label>
  <label><input type="checkbox"> Запуталась</label>
  <label><input type="checkbox"> А кто ж её знает?</label>
</div>
<div class="question">3. Почему не очень довольны фанаты сериала?</div>
<div class="answer">
  <label><input type="checkbox"> Много логических промахов</label>
  <label><input type="checkbox"> Перебор соплей</label>
  <label><input type="checkbox"> Уменьшается % экшена</label>
</div>
<div class="question">4. Здесь надо выбрать один пункт</div>
<div class="answer">
  <label><input type="radio" name="quest4"> Нет</label>
  <label><input type="radio" name="quest4"> Да</label>
</div>

<table> <tr>
  <td> </td> <td><div class="cmd" onclick="ShowResult();">Закончить</div></td> <td><div class="cmd" onclick="ResetChk();">Сброс</div></td>
</tr> </table>

<div id="res"></div>

<script>
ResetChk();

function gid (idx) {return document.getElementById(idx);}

function ResetChk() {
  gid('res').style.display = 'none';
  var chk = document.getElementsByTagName('input');
  for (i=0; i < chk.length; i++) {
    if (chk[i].type == 'checkbox' || chk[i].type == 'radio') {chk[i].checked = false;}
  }
}

function ShowResult() {
  var answ = [
  '1,4',
  '2,3',
  '1,2,3',
  '2'
  ];

  var cnt = 0, k = [];
  var a = document.getElementsByClassName('answer');
  for (i=0; i<a.length; i++) {
    for (j=0; j<a[i].children.length; j++) {
      if (a[i].children[j].children[0].checked) {k.push(j+1)}
    }
    if(k.join() == answ[i]) {cnt++};
    k = [];
  }

  gid('res').innerHTML = 'Количество правильных ответов: ' + cnt;
  gid('res').style.display = 'block';
}
</script>
</body>
</html>

...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Не засчитывает ответы теста
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]