Я пытаюсь автоматически заполнить поле «дата» в моей веб-форме, чтобы пользователю не нужно было его вводить.
В настоящее время я использую приведенный ниже код, который работает нормально, за исключением того, что он не предоставляет дату в правильном формате, а также включает время, которое я не хочу включать.
<script>
tday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
tmonth=new Array("January","February","March","April","May","June","July","August","September","October","November","December");
function GetClock(){
var d=new Date();
var nday=d.getDay(),nmonth=d.getMonth(),ndate=d.getDate(),nyear=d.getYear();
if(nyear<1000) nyear+=1900;
document.getElementById('clockbox').innerHTML=""+tday[nday]+", "+tmonth[nmonth]+" "+ndate+", "+nyear+""; } window.onload=function(){ GetClock(); setInterval(GetClock,1000);
}
</script>
Приведенный выше код дает такой результат: ср 22 мар 2017 00:59:21 GMT-0700 (тихоокеанское летнее время)
Я бы предпочел, чтобы результат был таким: среда, 22 марта 2017 г.
Кажется, вы назначаете значение даты вместо вычисляемой строки.
Проверьте ниже пример для различий.
tday = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
tmonth = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
function GetClock() {
var d = new Date();
var nday = d.getDay(),
nmonth = d.getMonth(),
ndate = d.getDate(),
nyear = d.getYear();
if (nyear < 1000)
nyear += 1900;
// Assign the direct date value
document.getElementById('clockbox').innerHTML = d;
//Assigning the customized date value
document.getElementById('clockbox1').innerHTML = tday[nday] + ", " + tmonth[nmonth] + " " + ndate + ", " + nyear + "";;
}
window.onload = function() {
GetClock();
setInterval(GetClock, 1000);
}
<div id="clockbox"></div>
<div id="clockbox1"></div>
Вы можете изменить свою функцию как:
tday = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
tmonth = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
function GetClock() {
var d = new Date();
var nday = d.getDay(), nmonth = d.getMonth(), ndate = d.getDate(), nyear = d.getYear();
if (nyear < 1000) nyear += 1900;
var date = tday[nday] + ", " + tmonth[nmonth] + " " + ndate + ", " + nyear;
var dateString = date.toDateString();
document.getElementById('clockbox').innerHTML = dateString;
}
window.onload = function () {
GetClock(); setInterval(GetClock, 1000);
}
Проверьте этот простой способ;
<script>
tday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
tmonth=new Array("January","February","March","April","May","June","July","August","September","October","November","December");
var d=new Date();
document.getElementById('clockbox').innerHTML=tday[d.getDay()]+" "+tmonth[d.getMonth()]+" "+d.getDate()+","+d.getFullYear();
</script>