在inputtypesdate中设置date
<input id="datePicker" type="date" />
我将在今天设置datepickerinputtypesdate在铬。
$(document).ready( function() { var now = new Date(); var today = now.getDate() + '/' + (now.getMonth() + 1) + '/' + now.getFullYear(); alert(today); $('#datePicker').val(today); });
但它不工作
编辑这个jsFiddle – 请尝试在铬。
小提琴链接: http : //jsfiddle.net/7LXPq/93/
这两个问题:
- 在HTML 5中的date控制以我们在SQL中使用的年 – 月 – 日格式接受
- 如果月份是9,则需要简单地设置为09而不是9。 所以它也适用于日场。
请按照小提琴演示链接:
var now = new Date(); var day = ("0" + now.getDate()).slice(-2); var month = ("0" + (now.getMonth() + 1)).slice(-2); var today = now.getFullYear()+"-"+(month)+"-"+(day) ; $('#datePicker').val(today);
document.getElementById("datePicker"). valueAsDate = new Date()
应该pipe用。
更新:我这样做date.toISOString().substr(0, 10)
。 给出与接受答案相同的结果,并得到很好的支持。
对我来说,解决这个问题最简单的方法是使用moment.js,只用两行来解决这个问题。
var today = moment().format('YYYY-MM-DD'); $('#datePicker').val(today);
如果代码的格式为: YYYY-MM-DD
,这是date格式的计算机标准http://en.wikipedia.org/wiki/ISO_8601
我通常在使用dateinput时创build这两个辅助函数:
// date is expected to be a date object (eg, new Date()) const dateToInput = date => `${date.getFullYear() }-${('0' + (date.getMonth() + 1)).slice(-2) }-${('0' + date.getDate()).slice(-2) }`; // str is expected in yyyy-mm-dd format (eg, "2017-03-14") const inputToDate = str => new Date(str.split('-'));
然后可以将dateinput值设置为:
$('#datePicker').val(dateToInput(new Date()));
并像这样检索选定的值
const dateVal = inputToDate($('#datePicker').val())
jquery版本
var currentdate = new Date(); $('#DatePickerInputID').val($.datepicker.formatDate('dd-M-y', currentdate));