Я написал функцию, которая устанавливает innerHTML диапазона с идентификатором «mail_not_valid» в значение «что не похоже на правду», когда пользователь пытается ввести неверный адрес электронной почты. Работает отлично. Другая функция очищает поле ввода и запускается функцией onfocus. Третья функция запускается onblur и сбрасывает поле ввода к исходному значению, когда пользователь ничего не вводил. Теперь вот проблема: если пользователь нажимает на поле (-> очищено), вводит недействительный адрес электронной почты (-> отображается диапазон), а затем просто удаляет свою запись и покидает форму, диапазон все еще там.
Теперь, когда я заменяю document.getElementById ("mail_not_valid"). InnerHTML = ""; с предупреждением предупреждение появляется. Однако изменение innerHTML не работает.
РЕДАКТИРОВАТЬ: я идиот, он не может работать, если пользователь уже что-то написал: if (! (Feld.value))
<input onblur="OnBlurCondition (this, 'subscribe to the e-mail newsletter')">
<script language="javascript">
function OnBlurCondition (feld, inhalt) {
if (!(feld.value)){
feld.value = inhalt;
if (document.getElementById("mail_not_valid").innerHTML == "that doesn't seem right."){
document.getElementById("mail_not_valid").innerHTML = "";
}
}
}
</script>