0

单击“明天”按钮时,我想获得相同的日期格式。目前它在点击时显示两种不同的输出。如果有人可以提供解决方案?下面是JS代码。

 var today = new Date(),
    dd = today.getDate(),
    mm = today.getMonth()+1,
    yyyy = today.getFullYear(),
    nextDate = new Date(today.getTime() + (24 * 60 * 60 * 1000)),
    tomorrow = nextDate.toDateString();

if(dd<10){
    dd='0'+dd
}
if(mm<10){
    mm='0'+mm
} 
today = dd+'/'+mm+'/'+yyyy;

addEventListener("load", function(){
    dateInput = document.getElementById('dateID');
    dateInput.value = "";
}, false);

function currentDate(){
    dateInput.value = today;
}
function tomorrowDate(){
    dateInput.value = tomorrow;
}

/******************************

<div class="wrapper">
    <input type="text" id="dateID" /><br />
    <input type="button" value="Today" onclick="currentDate();" />
    <input type="button" value="Tomorrow" onClick="tomorrowDate();" />
</div>
4

2 回答 2

2

试试这个代码

function currentdate()
{

            var currentDate = new Date()
            var day = (currentDate.getDate()<10 ? "0" : "") + currentDate.getDate()
            var month = (currentDate.getMonth()<9 ? "0" : "") + (currentDate.getMonth()+1)
            var year =  currentDate.getFullYear()
            var todayDate =  month +"/" +day + "/" + year ;
            return todayDate;
}
于 2013-04-29T14:01:13.727 回答
0

如果您只想要类似的日期格式输出,您可以将此行更改today = dd+'/'+mm+'/'+yyyy为,today = today.toDateString();或者如果您希望它采用 dd/mm/yyyy 格式:

我建议不要为此使用全局变量,也不要混淆类型(即不要将DateObject分配给然后立即将其设为today字符串),而是执行以下操作:

    addEventListener("load", function(){
    dateInput = document.getElementById('dateID');
    dateInput.value = "";
}, false);

function formatDate(dt) {
    var dd = dt.getDate();
    var mm = dt.getMonth() + 1;
    var yyyy = dt.getFullYear();
    return dd + "/" + mm + "/" + yyyy;
}

function currentDate(){
    dateInput.value = formatDate(new Date());
}
function tomorrowDate(){
    dateInput.value = formatDate(new Date(new Date().getTime() + 24 * 60 * 60 * 1000));
}
于 2013-04-29T13:38:34.357 回答