日期类型的input元素设置默认值为当天

本文介绍了HTML5中form元素对日期时间的支持,包括各种日期时间输入类型及其默认行为。探讨了如何设置默认日期为当前日期,并讨论了浏览器支持情况。

html5的form元素对日期时间有丰富的支持

<input type="date">
<input type="time">
<input type="datetime">
<input type="month">
<input type="week">
<input type="datetime-local">

问题是,你使用了它们后,发现日期并不是默认在当天的(没有默认任何日期),而且el.value=new Date()也不行,只支持yyyy-MM-ddTHH:mm:ss.SSS(或其部分)这种形式的的字符串:

From the documentation:

A string representing a date.

Value: A valid full-date as defined in [RFC 3339], with the additional qualification that the year component is four or more digits representing a number greater than 0.

js默认是没有日期格式化函数的,除非你打算:

  • 引入一个js的日期库
  • 自己写一个简单的日期扩展类(自己考虑每月天数的不同,闰年等等问题,以实现日期的增减)
  • 用后台语言直接在value的位置格式化输出,如<?=date('Y-m-d').'T'.date('H:i') ?>

这篇文章找到了一个简单的用法,文档在此,使用:

document.getElementById('datePicker').valueAsDate = new Date();

有意思的是,我用jQuery的选择器居然不能使用这个属性(设置了后无效)

此外,这些新玩意你只能在有限场景使用,生产环境是没意义的,浏览器支持太水了。

转载于:https://www.cnblogs.com/walkerwang/p/3613721.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值