我试过了(JSFiddle):

<input type="date" value="2012-3-23"> .

但它不起作用,我如何设置默认值?


当前回答

JS代码:

function TodayDate(){
        let data= new Date();
        return data.getFullYear().toString()+'-' + (data.getMonth()+1).toString()+'-' + data.getDate().toString()
    }
    document.getElementById('today').innerHTML = '<input type="date" name="Data" value="'+TodayDate()+'" ><br>';

Html代码:

<div id="today" > </div>

有点粗糙,但很有效!

其他回答

// HTML

<input id="idFdate" type="date" />

// javascript代码的主要加载函数

function loadFunction() {
    // body...
    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;                
    document.getElementById("idFdate").defaultValue =today+"";
}

日期的格式为YYYY-MM-DD。个位数的日和月应该用0填充。一月是01。

从文档中可以看到:

表示日期的字符串。

值:在[RFC 3339]中定义的有效的完整日期,附加的限定条件是年份组件是四个或更多数字,表示大于0的数字。

你的代码应该更改为:

<input type="date" value="2013-01-08"> .

例子jsfiddle

一个可能的解决方案:

document.getElementById("yourDatePicker").valueAsDate = new Date();

使用Moment.js:

var today = moment().format('YYYY-MM-DD');
document.getElementById("datePicker").value = today;

<input type=“date” id=“myDate” />

然后在js中:

_today: function () {
  var myDate = document.querySelector(myDate);
  var today = new Date();
  myDate.value = today.toISOString().substr(0, 10);
},

下面是表单中三个不同日期的三条语句,其中有三个type=date字段。

$inv_date是当前日期:

$inv_date = date("Y-m-d");

$inv_date_from是当月的第一天:

$inv_date_from = date("Y") . "-" . date("m") . "-" . "01";

$inv_date_to是一个月的最后一天:

$inv_date_to = date("Y-m-t", strtotime(date("Y-m-t")));

我希望这对你有所帮助:)