ASP.NET Core MVC中如何为time类型input输入框设置当前时间默认值
你当前的写法无法达到预期效果,核心问题是type="time"的input对value格式有严格要求,你的格式化字符串不符合规范。
错误点说明
- 你使用了12小时制格式化符
hh与上午/下午标识tt,HTML time input 仅支持24小时制格式的value - 格式化字符串中错误使用了双冒号
::,正确分隔符为单个冒号:
正确实现方式
方式1:Razor服务端直接赋值(取服务器当前时间)
如果需要展示服务器的当前时间,直接使用以下代码即可:
<input type="time" id="starttime" value="@DateTime.Now.ToString("HH:mm:ss")" />
说明:如果不需要显示秒级时间,可将格式简化为HH:mm。
方式2:前端JS赋值(取客户端本地当前时间)
如果需要获取用户设备的本地时间,使用以下JS代码即可生效:
const now = new Date() const hours = String(now.getHours()).padStart(2, '0') const minutes = String(now.getMinutes()).padStart(2, '0') const seconds = String(now.getSeconds()).padStart(2, '0') document.querySelector('#starttime').value = `${hours}:${minutes}:${seconds}`
内容的提问来源于stack exchange,提问作者SCT
相关产品推荐
相关产品推荐

