03.11.2016, 18:38
|
Новичок на форуме
|
|
Регистрация: 03.11.2016
Сообщений: 5
|
|
почему не работает функция checkAnswers
подскажите новичку, есть такая задача - задаются 2 загадки, пользователь вводит ответы, программа проверяет их и в зависимости от результата выводит разные сообщения. Код ниже.
<!DOCTIPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<script>
function checkAnswer(id, trueAnswer)
{
var userAnswer = document.getElementByld(id).value;
if (userAnswer == trueAnswer)
return true;
else
return false;
}
function checkAnswers()
{
var goodAnswers = 0;
if (checkAnswer('puzzle1', 'капуста'))
goodAnswers++;
if (checkAnswer('puzzle2', 'елка'))
goodAnswers++;
if (goodAnswers == 0)
alert('Вы ничего не угадали');
else
alert('Количество правильных ответов: ' + goodAnswers);
}
</script>
<body>
<h3>Отгадай загадки!</h3>
<p>Сто одежек и все без застежек<p/>
<input type="text" id=puzzle1 />
<br><br><br>
<p>Зимой и летом одним цветом<p/>
<input type="text" id=puzzle2 />
<br><br><br>
<input type="button" value="Ответить" onClick="checkAnswers()" />
</body>
</html>
Пример учебный, код записан из образца, причем вроде как правильно, но не срабатывает. Я уже тут все, что мог перепробовал, но не могу понять, где засада.
Что здесь не так?
Последний раз редактировалось Max-Mas, 03.11.2016 в 18:42.
|
|
03.11.2016, 18:49
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
Max-Mas,
а консоль пробовали смотреть? а теги?
в тегах 2 опечатки, в скрипте 1
Последний раз редактировалось рони, 03.11.2016 в 18:52.
|
|
03.11.2016, 19:52
|
Новичок на форуме
|
|
Регистрация: 03.11.2016
Сообщений: 5
|
|
Сообщение от рони
|
Max-Mas,
а консоль пробовали смотреть? а теги?
в тегах 2 опечатки, в скрипте 1
|
Сэнкс за подсказку насчет консоли, как-то я про нее забыл. Пишет, что document.getElementByld(id) не функция, undefined. Но что с этим делать даже не знаю, пример учебный, я оттуда код взял. Значит там ошибки, но где они именно?
И насчет опечаток тоже были мысли, что закрывающие слэши в input лишние, что в if нет логических операторов. Пробовал менять, но безрезультатно.
Поэтому вот и обратился за помощью, в какую сторону хотя бы смотреть?
Последний раз редактировалось Max-Mas, 03.11.2016 в 19:58.
|
|
03.11.2016, 20:00
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
Сообщение от Max-Mas
|
Пишет, что document.getElementByld(id) не функция, indefined.
|
Сообщение от рони
|
в тегах 2 опечатки, в скрипте 1
|
https://developer.mozilla.org/en-US/...getElementById
смотреть сюда и медитировать, игра такая есть найдите разницу, вам же консоль написала что исправить.
|
|
03.11.2016, 20:37
|
Новичок на форуме
|
|
Регистрация: 03.11.2016
Сообщений: 5
|
|
Как-то вот не ожидал, что в учебниках будут ошибки.
Спасибо за наводку. Нашел, исправил, все заработало.
А подскажите, где эти опечатки в тегах, понимаю, что по идее должен сам найти, но уже столько вариантов, что просто хочется какой-то определенности
|
|
03.11.2016, 20:40
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
Max-Mas,
строка 38 и 41
|
|
04.11.2016, 08:18
|
Новичок на форуме
|
|
Регистрация: 03.11.2016
Сообщений: 5
|
|
так вроде бы тег p может даже вообще не иметь закрывающего тега? Поэтому наверное программа все равно нормально отрабатывает, типа она игнорирует этот слэш после p. Т.е. это уже не совсем ошибка?))
|
|
04.11.2016, 08:37
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
Max-Mas,
браузер много чего может исправить, но лучше его не напрягать, может к вашим фантазиям, добавить свои.
|
|
05.11.2016, 20:11
|
Новичок на форуме
|
|
Регистрация: 03.11.2016
Сообщений: 5
|
|
Сообщение от рони
|
Max-Mas,
браузер много чего может исправить, но лучше его не напрягать, может к вашим фантазиям, добавить свои.
|
Согласен.
Спасибо, что помогли разобраться!
|
|
|
|