javascript - 如何在输入中的任意位置单击打开 HTML 日期选择器对话框?

标签 javascript html css forms

<分区>

带有 type=date 的默认 HTML 输入(下面的代码)将显示日期选择器输入。

但是,只有当您单击输入框最右侧的日历图标时,日期选择器对话框才会打开。

如果您单击输入中的其他任何地方,该对话框不会打开。

当您单击输入框内的任意位置时,如何启用输入框以打开日期选择器对话框?

注意:我已经在 Stack overflow 和互联网上搜索过类似问题的答案,但没有找到合适的解决方案。

<label for="session-date">Start date:</label>

<input type="date" id="session-date" name="session-date">

最佳答案

单击该字段时应该这样做(没有 js!);当它第一次聚焦时,它只监听输入,但你可以使用 js 解决。

input#session-date {
    display: inline-block;
    position: relative;
}

input[type="date"]::-webkit-calendar-picker-indicator {
    background: transparent;
    bottom: 0;
    color: transparent;
    cursor: pointer;
    height: auto;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: auto;
}
注意:使用这种方法你会丢失图标,但你绝对可以添加一个:

Here's the demo on codepen

关于javascript - 如何在输入中的任意位置单击打开 HTML 日期选择器对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67270341/

相关文章:

javascript - Objective-C 到 JavaScript 的调用没有发生

javascript - 'exit' - 在 node.js 集群中从 master 杀死时工作进程中的事件

html - 将鼠标悬停在链接旁边的链接显示图像上时

javascript - 为什么我的 Sass 在使用 Gulp 时没有出现?

javascript - 某些 HTML 不希望在 IE 中显示/隐藏。为什么?

javascript - 当组件在 native react 中重新呈现时,动态不透明度不会改变

javascript - 在 Canvas 上使用keyEvent的addEventListener

javascript - 我正在尝试使用 Javascript 处理鼠标悬停事件并遇到一些问题

css - 流体网格布局控制

css - 无法在 Chrome 中使用 @font-face 在 Stylus 中定义的类中呈现字体