Суть вопроса как добавить элемент через "append" только один раз?
Простое поле ввода, если ввели данные - то данные выводим в консоль.
Если input пуст - и нажимаем ентер - выводиться ошибка, что поле пустое и в DOM добавляется строка (p с классом .error).
При повторном нажатии ентер новое сообщение об ошибке не создавать оставить предыдущее. Сейчас при нажатии ентера постоянно отрабатывает append.
Как устранить?
var form = document.forms.mess;
var msg = form.username;
form.addEventListener('submit', function(e){
e.preventDefault();
msg.addEventListener('keydown', function(e){
if(e.keyCode === 13) {
if (this.value !== '') {
console.log(this.value);
this.value = '';
} else {
alert('Пустое поле - заполните его!');
//////////////////////////////////////////////////////////////////
/*Как в данном месте вывести append только один раз */
var error = document.createElement('p');
error.innerHTML = 'Ошибка ввода!';
error.className = 'error';
form.append(error);
form.previousElementSibling.remove('error');
}
}
});
});