Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Изменить текст если условие не выполнено. (https://javascript.ru/forum/css-html/70030-izmenit-tekst-esli-uslovie-ne-vypolneno.html)

Doc_Emmett Brown 04.08.2017 22:14

Изменить текст если условие не выполнено.
 
В JavaScript я новенький, не пинайте сильно. :help:
Есть поле для вода текста и ссылка которая если условие в поле вода не выполнено ставиться не активна. Нужно чтобы изменился текст ссылки при этом чтобы работало и отмена действия.
P. S. И если не жало скажите как сделать чтобы после удаления данных в поле для ввода текста и ввода снова опять прошла проверка выполнения условия.
Код html:
<input onkeyup="this.value=this.value.replace(/[^\d\.]+/g,'')" type="text" name="comment" cols="20" rows="1" onchange="changeQ(this)" />
<a id="nhome" href="home.html">Изменить</a>

Код JS:
function changeQ (e) {
if (e.value < 101) { 
var nhome = document.getElementById("nhome");
nhome.addEventListener("click", function(event) {
event.preventDefault();
}, false);
}
}

рони 05.08.2017 00:05

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>

  <script>
    window.addEventListener('DOMContentLoaded', function() {
      var input = document.querySelector('[name="comment"]'),
      a = document.querySelector('#nhome');
      input.addEventListener('input', function() {
      this.value = this.value.replace(/\D/g,'');
      a.textContent = +this.value < 101  ? "не верно" : "Изменить";
      }, false);
      a.addEventListener("click", function(event) {
      if(+input.value < 101) event.preventDefault();
      }, false);

        });
  </script>
</head>

<body>
<input type="text" name="comment" />
<a id="nhome" href="home.html">Изменить</a>

</body>
</html>


Часовой пояс GMT +3, время: 19:19.