Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.11.2016, 18:38
Новичок на форуме
Отправить личное сообщение для Max-Mas Посмотреть профиль Найти все сообщения от Max-Mas
 
Регистрация: 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.
Ответить с цитированием
  #2 (permalink)  
Старый 03.11.2016, 18:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Max-Mas,
а консоль пробовали смотреть? а теги?
в тегах 2 опечатки, в скрипте 1

Последний раз редактировалось рони, 03.11.2016 в 18:52.
Ответить с цитированием
  #3 (permalink)  
Старый 03.11.2016, 19:52
Новичок на форуме
Отправить личное сообщение для Max-Mas Посмотреть профиль Найти все сообщения от Max-Mas
 
Регистрация: 03.11.2016
Сообщений: 5

Сообщение от рони Посмотреть сообщение
Max-Mas,
а консоль пробовали смотреть? а теги?
в тегах 2 опечатки, в скрипте 1
Сэнкс за подсказку насчет консоли, как-то я про нее забыл. Пишет, что document.getElementByld(id) не функция, undefined. Но что с этим делать даже не знаю, пример учебный, я оттуда код взял. Значит там ошибки, но где они именно?

И насчет опечаток тоже были мысли, что закрывающие слэши в input лишние, что в if нет логических операторов. Пробовал менять, но безрезультатно.

Поэтому вот и обратился за помощью, в какую сторону хотя бы смотреть?

Последний раз редактировалось Max-Mas, 03.11.2016 в 19:58.
Ответить с цитированием
  #4 (permalink)  
Старый 03.11.2016, 20:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Сообщение от Max-Mas
Пишет, что document.getElementByld(id) не функция, indefined.
Сообщение от рони
в тегах 2 опечатки, в скрипте 1
https://developer.mozilla.org/en-US/...getElementById
смотреть сюда и медитировать, игра такая есть найдите разницу, вам же консоль написала что исправить.
Ответить с цитированием
  #5 (permalink)  
Старый 03.11.2016, 20:37
Новичок на форуме
Отправить личное сообщение для Max-Mas Посмотреть профиль Найти все сообщения от Max-Mas
 
Регистрация: 03.11.2016
Сообщений: 5

Как-то вот не ожидал, что в учебниках будут ошибки.

Спасибо за наводку. Нашел, исправил, все заработало.

А подскажите, где эти опечатки в тегах, понимаю, что по идее должен сам найти, но уже столько вариантов, что просто хочется какой-то определенности
Ответить с цитированием
  #6 (permalink)  
Старый 03.11.2016, 20:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Max-Mas,
строка 38 и 41
Ответить с цитированием
  #7 (permalink)  
Старый 04.11.2016, 08:18
Новичок на форуме
Отправить личное сообщение для Max-Mas Посмотреть профиль Найти все сообщения от Max-Mas
 
Регистрация: 03.11.2016
Сообщений: 5

так вроде бы тег p может даже вообще не иметь закрывающего тега? Поэтому наверное программа все равно нормально отрабатывает, типа она игнорирует этот слэш после p. Т.е. это уже не совсем ошибка?))
Ответить с цитированием
  #8 (permalink)  
Старый 04.11.2016, 08:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Max-Mas,
браузер много чего может исправить, но лучше его не напрягать, может к вашим фантазиям, добавить свои.
Ответить с цитированием
  #9 (permalink)  
Старый 05.11.2016, 20:11
Новичок на форуме
Отправить личное сообщение для Max-Mas Посмотреть профиль Найти все сообщения от Max-Mas
 
Регистрация: 03.11.2016
Сообщений: 5

Сообщение от рони Посмотреть сообщение
Max-Mas,
браузер много чего может исправить, но лучше его не напрягать, может к вашим фантазиям, добавить свои.
Согласен.

Спасибо, что помогли разобраться!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
почему не работает функция Терехов Станислав Общие вопросы Javascript 28 30.12.2013 14:56
почему один вызов load работает, а другой - нет kravru jQuery 1 16.09.2013 20:51
Не работает пользовательская функция Synov_son Общие вопросы Javascript 6 14.09.2013 14:36
Не работает функция из подключаемого файла evgenyan jQuery 3 28.10.2010 14:48
Почему не работает функция? Vitaly jQuery 10 31.07.2009 17:01