Решение 1: Объявите глобальную переменную, которая отслеживает изменение даты, а затем сбросьте ее при размытии.
var dateValueChanged = false;
function onChange(){
dateValueChanged = true;
}
function onBlur(){
if(dateValueChanged){
//do thing
alert('value has changed and blur');
dateValueChanged = false;
}
}
И HTML:
<input type="date" onchange="onChange()" onblur="onBlur()">
https://plnkr.co/edit/xPlZ6GoSOE7wo5VrXJYz?p=preview
Решение 2 : передать элемент для замены и изменить onblur элемента в функции onchange
function onChange(el){
el.setAttribute("onblur", "onBlur(this)");
}
function onBlur(el){
//do thing
alert('value has changed and blur');
el.setAttribute("onblur", "");
}
HTML
<input type="date" onchange="onChange(this)">
https://plnkr.co/edit/PYQ2qITv4SZvh80cCQSM?p=preview