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))
});<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>
如何在处理表单提交后重置表单?
下面是我目前正在做的事情:
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我搜索了类似的线程并尝试了$('#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>我尝试了以下建议:
$('#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发布于 2018-04-25 14:15:07
试试这个:
$('#myform').find("input:not([type="submit"), textarea").val("");它将清除表单中的所有数据。但是如果你有预填充值,你应该使用下面的代码:document.getElementById('myform').reset()
注意:使用'myform‘作为表单id属性。例如:
<form name="myform" id="myform">
发布于 2018-04-25 14:12:59
您需要获取实际的表单,而不是jQuery对象:
$('#myform').get(0).reset();发布于 2018-04-25 14:14:56
为了让javascript知道要重置哪个表单,您需要向表单添加id,而不仅仅是名称。试一下,
<form name="myform" id="myform">https://stackoverflow.com/questions/50015112
复制相似问题