【问题标题】:HTML - change pattern of date input fieldHTML - 更改日期输入字段的模式
【发布时间】:2022-02-09 21:17:30
【问题描述】:

我需要将输入日期字段的模式更改为Day.Month.Year,可以吗?

<input type="date" name="datum" value="datum"/>

目前看起来是这样的:

但如果我提交表单并在 PHP 中捕获值,那么该值将像这样“2022-02-17”存储起来

我在 firefox 文档中找到了this section,但它没有提供任何示例。

【问题讨论】:

    标签: php html


    【解决方案1】:

    您可以在使用 PHP 处理程序捕获值后更正日期。

    $date = $_POST['datum'];
    $date = date("Y-m-d",strtotime($date));
    

    要在 HTML 页面中以 d.m.Y 格式显示日期,再次将其转换为

    $date = date("d.m.Y",strtotime($date));
    

    【讨论】:

    • 好的,所以无法更改输入中的模式,这样我什至不需要在PHP中进行转换?
    • 不清楚您在处理输入的内容。您是否希望该值以一种方式显示,然后以另一种方式提交。这是预定义的输入还是用户输入的值?无论哪种方式,您都可以通过创建一个 javascript 方法来为您的输入返回一个值来完成此操作。您的用例将决定您是在更改时运行方法还是在提交时处理它。
    • @Black 不,这是不可能的。 developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date 告诉您该值是 “表示 YYYY-MM-DD 格式的日期的 DOMString,或为空” - 如果您想 set 通过脚本获取值,当您通过 JS 读取或提交表单时,您将始终获取该格式。
    • pattern适用到输入字段类型passwordtexttel 开头,您可以在developer.mozilla.org/en-US/docs/Web/HTML/Element/… 上找到提及
    • @CBroe,谢谢,这就是我想知道的。
    猜你喜欢
    • 2013-03-06
    • 2023-03-27
    • 1970-01-01
    • 2018-09-29
    • 2020-09-07
    • 1970-01-01
    • 1970-01-01
    • 2011-05-01
    • 1970-01-01
    相关资源
    最近更新 更多