为什么这个onpaste事件没有解雇?

时间:2016-08-04 18:35:57

标签: javascript html

我尝试捕获input[type="date"]元素的粘贴事件。在Chrome中,您无法复制/粘贴到此类元素中,因此我尝试将其包含在带有DIV事件的onpaste元素中。我遇到的问题是,如果您单击日期输入并按 CTRL + V 则不会发生任何事情。但是,如果您首先单击正文中的任何其他位置然后单击日期输入并按 CTRL + V ,它将起作用...

<div onpaste="alert('test')">
    <input type="date">
</div>

演示:

https://jsfiddle.net/4qh31tn0/

编辑:好的,所以事实证明onpaste事件不必在DIV上,它可以移到{{} 1}}元素,但问题仍然存在。如果我加载jsfiddle,单击输入并按 CTRL + V ,没有任何反应。如果我事先单击INPUT元素之外的某个位置,然后单击输入并按 CTRL + V ,它可以工作...

1 个答案:

答案 0 :(得分:1)

虽然这个错误(我认为这是一个错误)没有修复,但您可以使用onkeydownonkeyuponclick检测日期输入是否为changedonblur和其他事件。