Как очистить предыдущее значение текстового поля после отправки формы без обновления всей страницы

Я делаю веб-приложение, используя javascript и html, который имеет форму, содержащую текстовое поле, кнопку. Когда я ввожу номер в это текстовое поле и отправляю его нажатием на эту кнопку, текстовые области генерируются динамически. Когда моя форма отправлена, некоторые текстовые области создаются, но если я не удовлетворен существующими текстовыми областями, то снова я ввожу какое-то значение с обновляющейся страницей. Но введенное ранее значение текстового поля преобладает, показывая новые текстовые области ниже существующих текстовых областей на странице.

Итак, как очистить значение, не обновляя страницу.

var num_q=document.getElementById('numquest').value; //code for dynamic creation

Вы можете установить значение элемента пустым

 document.getElementById('elementId').value=''; 

попробуй это:

если используется jquery:

 you can reset your form with - $("#myform")[0].reset(); 

или

 $('#form-id').children('input').val('') 

в javascript

  function submitForm() { // Get the first form with the name // Hopefully there is only one, but there are more, select the correct index var frm = document.getElementsByName('contact-form')[0]; frm.submit(); // Submit frm.reset(); // Reset return false; // Prevent page refresh } 

Назначить пустое значение:

 document.getElementById('numquest').value=null; 

или, если хотите очистить все поля формы. Просто отправьте метод сброса формы:

 document.forms['form_name'].reset() 

вы можете просто сделать так, как вы получите значение этих элементов

 document.getElementById('numquest').value=''; 
 


Вы можете использовать этот скрипт там, где хотите.

HTML

 

и jquery

 $("#some_form").reset(); 

Я считаю, что лучше использовать

 $('#form-id').find('input').val(''); 

вместо

 $('#form-id').children('input').val(''); 

если у вас есть флажки в вашей форме, используйте это, чтобы отдохнуть:

 $('#form-id').find('input:checkbox').removeAttr('checked'); 

.val() или .value – это лучшее решение, потому что оно полезно с Ajax. И .reset() работает только после перезагрузки страницы, и API-интерфейсы, использующие Ajax, никогда не обновляют страницы, если только это не вызвано другим скриптом.

У меня был этот вопрос, и я решил:

 .done(function() { $(this).find("input").val(""); $("#feedback").trigger("reset"); }); 

Я добавил этот код после моего скрипта, когда использовал jQuery. Попробуйте же)