在文本框中显示当前日期 - JavaScript

displaying current date in a text box - javascript

本文关键字:当前日期 JavaScript 显示 文本      更新时间:2023-09-26

我很难将当前日期输入到我正在创建的表单中的文本框中作为默认值。 目前我有以下代码,我相信它会创建当前日期,然后是文本框代码,我不确定如何修改以显示日期。

function getDate(){
 var todaydate = new Date();
 var day = todaydate.getDate();
 var month = todaydate.getMonth() + 1;
 var year = todaydate.getFullYear();
 var datestring = day + "/" + month + "/" + year;
 document.getElementById("frmDate").value = datestring();
} 
<input type="text" name="frmDateReg" required id="frmDate"  value="getDate()">

如果有人可以建议如何创建今天的日期并将其作为默认值输入到文本框中,将不胜感激。(请原谅任何格式问题,因为我是堆栈溢出的新手)谢谢

你的想法是正确的。 它只是乱序:

<input type="text" name="frmDateReg" required id="frmDate" value="">
function getDate(){
   var todaydate = new Date();
   var day = todaydate.getDate();
   var month = todaydate.getMonth() + 1;
   var year = todaydate.getFullYear();
   var datestring = day + "/" + month + "/" + year;
   document.getElementById("frmDate").value = datestring;
  } 
getDate(); 

您的代码是正确的,只是在值中添加函数调用不会执行任何操作。 您需要其他东西来触发该功能。 我在那里的方式,它将在页面加载时自动执行。

同样,日期字符串不是一个函数。 它只是一个变量。 所以你可以省略 ()

试试这个Jquery代码,这将起作用

  $(document).ready(function () {
        var dateNewFormat, onlyDate, today = new Date();
        dateNewFormat = today.getFullYear() + '-';
        if (today.getMonth().length == 2) {
            dateNewFormat += (today.getMonth() + 1);
        }
        else {
            dateNewFormat += '0' + (today.getMonth() + 1);
        }
        onlyDate = today.getDate();
        if (onlyDate.toString().length == 2) {
            dateNewFormat += "-" + onlyDate;
        }
        else {
            dateNewFormat += '-0' + onlyDate;
        }
        $('#mydate').val(dateNewFormat);
    });

剃须刀视图

@Html.TextBoxFor(m => m.StartedDate, new { @id = "mydate", @type = "date", @class = "form-control" })

这个简单的解决方案对我来说很有效。您可以使用javascript的window.onload函数显示当前日期。查看输出。

 var todaydate = new Date();
 var day = todaydate.getDate();
 var month = todaydate.getMonth() + 1;
 var year = todaydate.getFullYear();
 var datestring = day + "/" + month + "/" + year;
 window.onload = function(){
 document.getElementById("date").value = datestring;
 }
 
<input type="text" id="date"/ >

<html>
<body onload="myFunction()">
Date: <input type="text" id="demo"/>
<script>
function myFunction() {
document.getElementById('demo').value= Date();
}
</script>
</body>
</html>

使用此代码。 这将有所帮助

<input type="text" name="frmDateReg" required id="frmDate"  >

<script>
function getDate(){
var todaydate = new Date();
var day = todaydate.getDate();
var month = todaydate.getMonth() + 1;
var year = todaydate.getFullYear();
var datestring = day + "/" + month + "/" + year;
document.getElementById("frmDate").value = datestring; //don't need ()
}
document.getElementById("frmDate").onload = getDate(); 
</script>

html

<input type="text" id="frmDate"></input>

JavaScript

var date = new Date();
document.getElementById("frmDate").value = (date.getMonth() + 1) + '/' + date.getDate() + '/' + date.getFullYear();

Jsfiddle 演示

<script TYPE="text/javascript" LANGUAGE=JAVASCRIPT>
var currentDate = new Date();
var date1 = currentDate.getMonth()+1;
var mon = currentDate.getDate();
if (mon<10)
    mon="0"+mon
var year = currentDate.getYear();
var hour = currentDate.getHours();
var dn="pm"
if (hour<12)
    dn="am"
if (hour>12)
    hour=hour-12
if (hour==0)
    hour=12
var minute = currentDate.getMinutes();
if (minute < 10){
    minute = "0" + minute
}
var second = currentDate.getSeconds();
if (second < 10){
    second = "0" + second
}
var today = date1+"/"+mon+"/"+year+" Time: "+hour+":"+minute+":"+second+" "+dn
var filePath = "''''servername''maindirectory''somedirectory''filenametopostto.xlsx";
function setDate()
{
    f1.tDate.value=today;
}
</script>

文本框中的结果为:

5/28/2019 时间: 3:03:01 pm

如果要在输入字段日期上显示当前日期

var today = new Date();
var dd = today.getDate();
var mm = today.getMonth() + 1; //January is 0!
var yyyy = today.getFullYear();
if (dd < 10) {
  dd = '0' + dd
}
if (mm < 10) {
  mm = '0' + mm
}
// today = yyyy + '/' + mm + '/' + dd;
today = `${yyyy}-${mm}-${dd}`;
document.getElementById('dateto1').value = today;
<div class="col-lg-4">
  <label>Date</label>
  <input type="date" name="dateto1" id="dateto1" class="form-control">
</div>