Javascript 要在不重新加载页面的情况下自动刷新我的表单吗
我有一个Javascript 要在不重新加载页面的情况下自动刷新我的表单吗,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我有一个提问表格,客户可以通过该表格向我们提出任何问题。当客户提交表单时,我们会给他5秒钟的感谢信息,然后隐藏信息并再次显示该div中的提问表单 但是,尽管from在成功消息之后出现,表单输入值仍然存在。我想要一个没有任何输入值的新表单,如提交前的表单 这是我的ajaxcode $.ajax({ url:"{{ url('/ask_question_form') }}", type: 'GET', data: {_t
提问
表格,客户可以通过该表格向我们提出任何问题。当客户提交表单时,我们会给他5秒钟的感谢信息,然后隐藏信息并再次显示该div中的提问
表单
但是,尽管from在成功消息之后出现,表单输入值仍然存在。我想要一个没有任何输入值的新表单,如提交前的表单
这是我的ajax
code
$.ajax({
url:"{{ url('/ask_question_form') }}",
type: 'GET',
data: {_token :token, name : name, email : email, contact : contact, question : question},
success:function(msg){
// console.log(msg);
$('.question-modal .textwidget').hide();
trHTML = "";
trHTML += "<div id='user-question' style='margin-top:50%; color:#0071BC'>";
trHTML += "Thanks for your question. We will save your question for further query and give a feedback as soon as possible.";
trHTML += "</div>";
$('.question-modal').append(trHTML);
setTimeout(function() {
$('.question-modal #user-question').remove();
$('.question-modal .textwidget').show();
}, 5000);
}
});
$.ajax({
网址:“{url('/ask_question_form')}”,
键入:“GET”,
数据:{令牌:令牌,名称:姓名,电子邮件:电子邮件,联系人:联系人,问题:问题},
成功:功能(msg){
//控制台日志(msg);
$('.question modal.textwidget').hide();
trHTML=“”;
trHTML+=“”;
trHTML+=“谢谢您的问题。我们将保存您的问题以供进一步查询,并尽快提供反馈。”;
trHTML+=“”;
$('.question modal').append(trHTML);
setTimeout(函数(){
$('.question modal#user question').remove();
$('.question modal.textwidget').show();
}, 5000);
}
});
其中textwidget
是该表单的类名
最好的解决方案是-
$("#form")[0].reset();
收到成功消息时使用此代码。成功提交表单后,删除所有字段的值
document.querySelector('get-your-field1').value = '';
document.querySelector('get-your-field2').value = '';
document.querySelector('get-your-field3').value = '';
document.querySelector('get-your-textarea').value = '';
或者您可以使用表单重置
const form=document.querySelector('form');
const btn=document.querySelector('button');
btn.addEventListener('click',事件=>{
event.preventDefault();
form.reset();
});代码>
提交
完成5秒后,当您隐藏“成功消息”时,您可以重置表单
$("#formId").get(0).reset();
这里是您表单的“formId”id。请注意,您似乎在表单中使用了一些令牌
这意味着,如果重置值,该标记仍将存在,
由于重复使用该令牌,服务器可能不会接受下一次表单提交
当服务器响应时,您需要设置一个新的令牌。以下是执行表单重置功能的示例:
函数重置(){
setTimeout(函数(){
var form=document.getElementById('myForm');
form.reset();
}, 1000);
}
var btn=document.getElementById('btn');
btn.onclick=函数(){
重置();
}
重置
在此处发布您的代码!!您只需form.reset()
it@Manoj请注意,您可以在这里显示您的代码吗?@Bhumi Shah0…添加代码…请检查…javascript中是否有刷新整个表单字段的函数?@Araftrahman,$(表单)[0]。reset()
是您想要的函数。您在项目中使用jquery吗?您使用的是$(“.formclass”).get(0.reset();或$(“.formclass”)[0].reset()?或者您可以执行document.getElementsByCassName(“formclass”)[0].reset()是的,我在项目中使用jquery..但是我尝试了使用jquery(“.formclass”).get(0).reset()代码>也是…如果我使用document.getElementsByClassName(“formclass”)[0].reset()
,仍然是相同的错误。。表格当时没有提交,现在已经完成了。。。。。在您的表单中输入id
<代码>$(“#表单id”)[0]。重置()代码>哦,太好了:)