gpt4 book ai didi

javascript - 热获取不完整的日期时间本地输入值

转载 作者:太空狗 更新时间:2023-10-29 14:20:47 25 4
gpt4 key购买 nike

我的页面上有以下表格:

<input id='startDate' type='datetime-local' step=1 name='startDate'>

我使用这段代码来获取字段的值:

var start = $('#startDate').val();

我的问题是输入字段的值一直未定义,直到输入字段的每个部分都已填写,包括小时、分钟、秒和 AM/PM。我希望能够从表格中获得一个值,只需要选择年份。

我该怎么做呢?我很乐意将未填写的值归零,但我不知道如何获取用户填写的 datetime-local 部分。

我知道我可以使用 timepicker addon 来做到这一点对于 jQuery UI 的日期选择器,但我真的不想走这条路 - 我更喜欢 Chrome 实现。

最佳答案

W3C Date State spec定义清理算法:

  • The value sanitization algorithm is as follows: If the value of the element is not a valid date string, then set it to the empty string instead.

每当设置输入元素的值时都会调用它,如 DOM input value spec 中定义的那样:

  • On getting, it must return the current value of the element. On setting, it must set the element's value to the new value, set the element's dirty value flag to true, invoke the value sanitization algorithm, if the element's type attribute's current state defines one, and then, if the element has a text entry cursor position, should move the text entry cursor position to the end of the text field, unselecting any selected text and resetting the selection direction to none.

因此,当日期无效时,value 属性将始终为空字符串。似乎没有指定“原始/脏/用户键入的文本值”的任何属性,因为它毕竟不是文本输入。

IMO 这是一件好事,它促进了表单验证,因为无效日期被视为虚假值(空字符串),它还让浏览器更自由地实现日期输入的 UI。

关于javascript - 热获取不完整的日期时间本地输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26615364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com