Почему я не могу сбросить это значение формы пустым с помощью JavaScript? - PullRequest
1 голос
/ 11 мая 2019

Я делаю калькулятор и не могу заставить работать мою кнопку очистки, чтобы очистить поле формы.

Остальная часть калькулятора работает просто отлично, только кнопка очистки имеет проблемы,Я даже пытался установить само значение в число или строку, и это тоже не имеет никакого эффекта.

Вот код:

function clear() {
  document.form.textview.value = '';
}
<form class="form" name="form">
  <input class="textview" name="textview" placeholder="0">
</form>
<input class="button CE-button" type="button" value="CE" onclick="clear()">

Ответы [ 4 ]

2 голосов
/ 11 мая 2019

clear() нельзя использовать в качестве имени функции, как указал Джек Бэшфорд в своем ответе. Однако, если вы используете форму, вы должны просто использовать функцию form.reset() вместо установки значения вручную:

<form class="form" name="form">
  <input class="textview" name="textview" placeholder="0">
</form>
<input class="button CE-button" type="button" value="CE" onclick="document.querySelector('form').reset()">

Еще лучше, просто используйте сброс button:

<form class="form" name="form">
  <input class="textview" name="textview" placeholder="0"><br>
  <button class="button CE-button" type="reset">CE</button>
</form>
1 голос
/ 11 мая 2019

Очистить - это зарезервированная функция в JavaScript - используйте что-то еще, например clearForm:

function clearForm() {
  document.form.textview.value = '';
}
<form class="form" name="form">
  <input class="textview" name="textview" placeholder="0">
</form>
<input class="button CE-button" type="button" value="CE" onclick="clearForm()">
0 голосов
/ 11 мая 2019

Функция Clear () не может быть использована, и вы можете заменить ее на другое имя функции.Однако использование «перезагрузки» может быть хорошим вариантом.

0 голосов
/ 11 мая 2019

Джек Башфорд прав.Вы также можете просто использовать функцию jQuery:

var clearField = function() {
    $('.textview').val("");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...