Как заменить пустое поле ввода значением - PullRequest
0 голосов
/ 21 января 2019

Я хотел бы заменить пустой входной файл значением "0" в нижней части on_click без нового значения "0", которое будет отображаться во входном поле.

      <input type="number" id="myText"onfocus="if (this.value=!'') this.value='';" min="0" oninput="this.value = Math.abs(this.value)"/>
    <br/> <p  </p><input type="number" id="myletter"value="3" onfocus="if (this.value=!'') this.value='';" min="0" oninput="this.value = Math.abs(this.value)"/>
    <br/> <p <input  type="number" id="mycapitalletter" value="1" onfocus="if (this.value=!'') this.value='';" min="0" oninput="this.value = Math.abs(this.value)"/>       
    <br/> <p  <input  type="number" id="sc""value="0" onfocus="if (this.value=!'') this.value='';" min="0" oninput="this.value = Math.abs(this.value)"/>
    <br/>
       <br/>
       <button onclick="myFunction()">click</button>

1 Ответ

0 голосов
/ 21 января 2019

Таким образом, в основном все, что вам нужно сделать, это исправить onfocus="if (this.value=!'') this.value=''; во всех ваших элементах ввода, в основном потому, что вы неправильно объявили оператор равенства, у вас есть =! вместо !== или !=.Это фиксированный HTML:

<input type="number" id="myText" onfocus="if (this.value!=='') this.value='';" min="0" oninput="this.value = Math.abs(this.value)" />
<br/>
<p> <input type="number" id="myletter" value="3" onfocus="if (this.value!=='') this.value='';" min="0" oninput="this.value = Math.abs(this.value)" /> </p>
<br/>
<p> <input type="number" id="mycapitalletter" value="1" onfocus="if (this.value!=='') this.value='';" min="0" oninput="this.value = Math.abs(this.value)" /> </p>
<br/>
<p> <input type="number" id="sc" value="0" onfocus="if (this.value!=='') this.value='';" min="0" oninput="this.value = Math.abs(this.value)" /> </p>
<br/>
<br/>
<button onclick="myFunction()">click</button>

Или, в конечном итоге, вы можете пропустить добавление его вручную к каждому входу, а под элементами создать свой тег <script> </script>, например:

<input type="number" id="myText" min="0" oninput="this.value = Math.abs(this.value)" />
<br/>
<p> <input type="number" id="myletter" value="3" min="0" oninput="this.value = Math.abs(this.value)" /> </p>
<br/>
<p> <input type="number" id="mycapitalletter" value="1" min="0" oninput="this.value = Math.abs(this.value)" /> </p>
<br/>
<p> <input type="number" id="sc" value="0" min="0" oninput="this.value = Math.abs(this.value)" /> </p>
<br/>
<br/>
<button onclick="myFunction()">click</button>

<script type="text/javascript">
  const inputs = document.querySelectorAll('input');
  inputs.forEach((input, i) => {
    input.onfocus = (event) => {
      event.currentTarget.value = "";
    }
  });
</script>

Сценарий выполняет, как я уже сказал, цикл по HtmlCollection, возвращаемому querySelector.Затем присоедините простую функцию, которая устанавливает значение input в пустое (или пустую строку) событие onfocus.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...