#html
Вопрос:
Я новичок в HTML и в настоящее время пытаюсь, чтобы мой код отображал время в текстовом поле Текущая дата. Однако, когда код будет помещен в <head>
раздел, время и дата не будут отображаться. Он будет отображаться только тогда, когда код будет размещен после <body>
раздела. Есть ли причины для того, чтобы это было так?
function getDate() {
var todaydate = new Date();
var day = todaydate.getDate();
var month = todaydate.getMonth() 1;
var year = todaydate.getFullYear();
var hours = todaydate.getHours();
var minutes = todaydate.getMinutes();
var seconds = todaydate.getSeconds();
var datestring = (day "/" month "/" year ' ' hours ':' minutes ':' seconds);
document.getElementById("Date").value = datestring;
}
getDate()
setInterval(getDate, 1000);
Комментарии:
1. Не могли бы вы, пожалуйста, добавить свой HTML
Ответ №1:
Ну , он будет работать только после id="Date"
того, как будет создан, как JavaScript будет по ошибке, если вы используете его до его создания, вы увидите ошибку, так как нет элемента с таким именем.
Поставьте свое
script
» до » и «послеid="Date"
» и посмотрите на разницу.
Поэтому всегда рекомендуется ставить внизу html
и рядом </body>
с тегом
Смотрите здесь, в приведенном ниже фрагменте (при script
размещении после id="Date"
) :
<div id="Date"></div>
<script>
function getDate() {
var todaydate = new Date();
var day = todaydate.getDate();
var month = todaydate.getMonth() 1;
var year = todaydate.getFullYear();
var hours = todaydate.getHours();
var minutes = todaydate.getMinutes();
var seconds = todaydate.getSeconds();
var datestring = (day "/" month "/" year ' ' hours ':' minutes ':' seconds);
document.getElementById("Date").innerHTML = datestring;
}
getDate()
setInterval(getDate, 1000);
</script>
Также смотрите приведенный ниже фрагмент (при script
размещении ранее id="Date"
) :
<script>
function getDate() {
var todaydate = new Date();
var day = todaydate.getDate();
var month = todaydate.getMonth() 1;
var year = todaydate.getFullYear();
var hours = todaydate.getHours();
var minutes = todaydate.getMinutes();
var seconds = todaydate.getSeconds();
var datestring = (day "/" month "/" year ' ' hours ':' minutes ':' seconds);
document.getElementById("Date").innerHTML = datestring;
}
getDate()
setInterval(getDate, 1000);
</script>
<div id="Date"></div>
Это выдаст ошибку, так как до сих пор не id="Date"
определено