Ниже отложенного jQuery fail() выполняется только один раз, почему?
fail()
var dfd = $.Deferred(); $('button').on('click', function(){ if(typeof lorem === 'undefined') { return dfd.reject(); } }); dfd.fail(function(){ alert('Variable lorem is not defined'); });
https://codepen.io/bartclaeys/pen/EOooKy
Ожидаемое поведение: При повторном нажатии кнопки предупреждение должно срабатывать несколько раз.
Отвечая на мой собственный вопрос, ниже работает:
$('button').on('click', function(){ var dfd = $.Deferred(); dfd.fail(function(){ alert('Error'); }); if(typeof lorem === 'undefined') { return dfd.reject(); } });