Я пытаюсь отображать время каждую секунду на HTML-странице в текстовом поле, но я просто получаю сообщение об ошибке, что getElementByID не существует. Мой код ниже. С приведенным ниже кодом ничего не отображается. не могли бы вы поправить меня или указать, что мне не хватает?
function getTime() {
var currentDate = new Date();
var date = currentDate.toLocaleString();
document.getElementById("clock").innerHTML = date;
}
var repeatedTime = setInterval("getTime()", 1000);
getTime();
Вот мой HTML-код:
<!DOCTYPE html>
<html>
<head>
<script src = "clockjavascript.js" ></script>
</head>
<body>
<form>
<input id = "clock" type = "text" />
</form>
</body>
</html>
Спасибо Даниэлю Сабо за то, что он решил эту проблему. Ниже приведен правильный javascript, который работает с HTML. Мне нужно было изменить document.getElementById ("часы"). InnerHTML на .value.
function getTime() {
var dateObject = new Date();
var dateString = dateObject.toLocaleString();
document.getElementById("clock").value = dateString;
}
var repeatedTime = setInterval(getTime, 1000);
getTime();
Я изменил его на document.getElementByID, но он по-прежнему не работает.
Попробуйте setInterval(getTime, 1000); вместо setInterval("getTime()", 1000);
Почему JSON работает только с JS? Кто-нибудь может ответить на этот вопрос, который я могу найти?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Ваш синтаксис немного сбился - это
getElementById
Скорее, чем
getElementByID
Последнее не существует как метод.
Согласно приведенным выше комментариям, d - это строчная буква Id.
Четыре вопроса
getElementById вместо getElementByID ("d" должно быть в нижнем регистре ")document.getElementById("clock").value вместо innerHTML для управления содержимым текстового поляsetInterval(getTime, 1000); вместо setInterval("getTime()", 1000);<script src = "clockjavascript.js"></script> в нижнюю часть страницы, непосредственно перед тегом </body>. Таким образом, обрабатываемый элемент <input> визуализируется и становится доступным для действий при выполнении сценария.Для быстрой проверки вы можете вставить это в консоль браузера и смотреть, как идет время.
function getTime() {
var currentDate = new Date();
var date = currentDate.toLocaleString();
console.info(date);
}
var repeatedTime = setInterval(getTime, 1000);
getTime();
Я попробовал оба эти изменения, веб-страница все еще не загружает время
Вы получаете ошибки или вообще ничего не происходит?
"Невозможно установить свойство 'innerHTML' равным нулю" - это ошибка
@Gideon Хорошо, это хороший прогресс. Это означает, что скрипт не может найти элемент с идентификатором «clock». Попробуйте переместить тег скрипта в конец документа, непосредственно перед тегом </body>. Таким образом, элемент ввода имел шанс отрисоваться до того, как механизм javascript попытается его найти. :)
Спасибо; последний код для javascript находится здесь. Помогло значение document.getElementById ("clock"). Value. Мне нужна была часть значения вместо innerHTML. функция getTime () {var currentDate = new Date (); var date = currentDate.toLocaleString (); document.getElementById ("часы"). значение = дата; } var RepeatedTime = setInterval (getTime, 1000); getTime ();
изменить ID -> Id