提交后重置HTML表单

rem*_*oys 1 html javascript

const scriptURL = 'URL'
const form = document.forms['myform']

form.addEventListener('submit', e => {
  e.preventDefault()
  fetch(scriptURL, {
      method: 'POST',
      body: new FormData(form)
    })
    .then(response => console.log('Success!', response))
    .catch(error => console.error('Error!', error.message))
});
Run Code Online (Sandbox Code Playgroud)
<form name="myform">
  <div class="col-md-6 col-sm-6">
    <div class="form-group">
      <label for="email" class="sr-only">Email</label>
      <input name="email" class="form-control" type="email" placeholder="Email" required>
    </div>
  </div>
  <div class="col-md-6 col-sm-6">
    <button type="submit" class="btn btn-default btn-block">Subscribe</button>
  </div>
</form>
Run Code Online (Sandbox Code Playgroud)

处理表单提交后如何重设表单?

这是我目前正在做的事情:

 form.addEventListener('submit', e => {
                          e.preventDefault()
                          fetch(scriptURL, { method: 'POST', body: new FormData(form)})
                          .then(response => console.log('Success!', response))
                          .catch(error => console.error('Error!', error.message))
                          })
                         $('#myform').reset(); // attempt to reset the form
Run Code Online (Sandbox Code Playgroud)

我搜索了类似的线程并尝试了$('#myform').reset(); 显然,这是行不通的。如果有人可以指出我在哪里可以学习此表单相关主题,那么我对Javascript还是陌生的,那将是很棒的

编辑:表单源

<form name="myform" id="myform">
    <div class="col-md-6 col-sm-6">
        <div class="form-group">
            <label for="email" class="sr-only">Email</label>
                <input name="email" class="form-control" type="email" placeholder="Email" required>
                </div>
    </div>
    <div class="col-md-6 col-sm-6">
        <button type="submit" class="btn btn-default btn-block">Subscribe</button>
    </div>
            </form>
Run Code Online (Sandbox Code Playgroud)

我尝试了以下建议:

  $('#myform').val(''); // not responding
  $('#myform')[0].reset // not responding
  $('#myform').reset(); // not responding
  $('#myform').get(0).reset(); // not responding

  $('#myform').find("input:not([type="submit"), textarea").val(""); // resetting the whole page with performing submission task

  $('#myform')[0].reset() // not responding
  document.forms['myform'].val(""); // not responding
  document.getElementById('#myform').reset() // not responding
Run Code Online (Sandbox Code Playgroud)

Del*_*ain 5

尝试这个:

$('#myform').find("input:not([type="submit"), textarea").val("");
Run Code Online (Sandbox Code Playgroud)

它将清除您表格中的所有数据。但是,如果您具有预填充值,则应使用以下代码:document.getElementById('myform').reset()

注意:使用“ myform”作为您的表单ID属性。例如:<form name="myform" id="myform">