2012-07-17 119 views
2

我需要在用户从Google Chrome中的本机日期选择器控件选择新日期时收到通知。Google Chrome日期选择器事件

您需要登录Google Chrome 20以查看本机日期选择器控件。

一些用户认为在iOS5中onBlur事件被解雇,但Chrome并非如此。

+0

'onchange'和'onblur'似乎在桌面/ Windows Chrome上触发? http://jsfiddle.net/6gxN2/这是专门在平板电脑/手机界面? – 2012-07-22 22:32:43

+0

@JaredFarrish这是在Windows上。当输入失去焦点时,onchange和onblur点火。如果我从日期选择器中选择一个新值,则只有在从日期输入中删除焦点时才会触发它们。 – Emil 2012-07-22 22:39:21

+0

所以你想知道日期选择器小部件何时关闭(但该字段不一定会模糊/更改)? – 2012-07-22 22:40:57

回答

1

当日期发生变化时,Chrome 24会触发更改事件,即使焦点尚未从文本框中移出。

即使用户手动更改日期,更改事件似乎也会触发。

+0

这是如何回答这个问题? – StriplingWarrior 2014-07-14 17:29:37

1

我在Windows机器上运行Chrome 20.0.1132.57,并且oninput事件似乎对此很好。我注意到Jared评论说这个事件在window.onload期间触发,但我一直无法重现(希望我不会错过那里明显的东西)。

为了测试它,我只是成立了一个网页,一个form元素和date类型的input并写了一个内嵌的事件处理程序oninput像这样:

<form> 
    <input type="date" id="theDate" oninput="alert('oninput event fired');" /> 
</form> 

我每次点击一个日期,今天按钮或清除按钮(如果日期因点击而改变,则仅)我收到警报,表示该事件已经触发。使用日期选择器顶部的任何控件更改当前月份时,此事件不会触发。

这是JS Bin的工作演示。希望这可以帮助!

0

好吧,我试着只用addEventListner

window.onload = function(){ 
    var d = document.getElementById('date'); 

    d.addEventListener('input', function(e){ 
     alert(d.value); 
    }); 
};​ 

和它的作品的方式。因此,也许你使用的功能太多,每个都是冲突的

相关问题