通过单击x删除日期时,我不知道如何捕捉清除日期的事件。 click事件没有用,因为我收到了change事件。
HTML:
我想在单击x时捕获事件(请参见图片)。 有提示吗?
使用jQuery v3.2.1和Bootstrap v3
答案 0 :(得分:2)
您可以只听更改事件。此脚本可以在有或没有jQuery的情况下使用,并且在设置值和单击清除按钮时将写入控制台:
var input = document.getElementsByTagName('input')[0];
input.addEventListener('change', function(e) {
if (!input.value)
console.log('clear!');
else
console.log('value', input.value);
});
<input type="date" />
答案 1 :(得分:2)
谢谢基思,这对我的解决方案是一个很好的体现。
我在项目中使用了jquery,所以我需要jquery中的解决方案。
此js解决方案解决了一个问题,但另一个问题是:如果加载页面并通过单击清除按钮(“ x”)删除日期值,则change事件无法识别它。解决方案:
$('.date-input')
.click(function(e) {
$(this).focus();
}
.change(function(e) {
var myValue = $(this);
if (!myValue.val()) {
// do something when cleared
} else {
// do something on changed date
}
});
HTML:
<input type="date" class="date-input" />