1

我遇到了这个并找到了很多解决方案,但没有一个适合我的问题。

<input type="date" #evtDate required name="evtDate" placeholder="Select Event Date" id="evtDate" formControlName="eventDate">

它在浏览器上显示为:

在此处输入图像描述

我想在这里显示一个字符串占位符,例如:

在此处输入图像描述

我使用 CSS 实现了这一点,例如,

input[type="date"]::before {
  content: attr(placeholder);
  width: 100%;
}
input[type="date"]:focus::before,
input[type="date"]:valid::before { display: none }

当我单击它的日期图标时,这部分在这里出现问题,日期输入再次更改为正常格式,例如:

在此处输入图像描述

如果我不使用这个 CSS 部分,它仍然会显示自定义占位符值,但不会更新输入中的任何内容。

// input[type="date"]:focus::before,
   // input[type="date"]:valid::before { display: none }

我还检查了是否为此输入 type="data" 创建了一些动态 HTML,并且需要保留这些动态 HTML 以将数据设置为该格式。

在此处输入图像描述

谁能建议如何做到这一点?提前致谢!

4

2 回答 2

1

你可以试试这些代码

<input type="text" placeholder="Date" onfocus="(this.type='date')"/>
于 2019-04-01T13:19:38.033 回答
0
onfocus="(this.type='date')" onblur="(this.type='text')"

HTML<------>
  <div">
    <label for="date">Date : </label>
    <input placeholder="Your Date" class="form-control" type="text" onfocus=" . 
    (this.type='date')" onblur="(this.type='text')" id="date">
  </div>
于 2019-04-01T13:18:23.173 回答