В общем выяснил совершенно точно, убрав все лишнее из скрипта.
Если работаешь с <a> = OK
$('div').on('click', 'a.sern', function() {
alert('OK'); // ОДИН РАЗ
return false;
});
Меняешь на <input> = Черт бы его побрал, выводит многократно.
$('div').on('input', 'input.sern', function() {
alert('OK'); // НЕСКОЛЬКО РАЗ
return false;
});
Буду искать как под инпут заголовок функции написать...