Javascript 提交表单,但页面不会重新加载。preventDefault()不工作

Javascript 提交表单,但页面不会重新加载。preventDefault()不工作,javascript,html,jquery,forms,preventdefault,Javascript,Html,Jquery,Forms,Preventdefault,当我使用表单并尝试提交时,它会重新加载页面。但我的要求是提交表单,但不重新加载页面并发送数据,并提及此操作url。 我知道这个重复的问题 表格 <form id="leadsquareForm" name="leadsquareForm" class="leadsquare-form-single-course" method="post" enctype="multipart/form-da

当我使用表单并尝试提交时,它会重新加载页面。但我的要求是提交表单,但不重新加载页面并发送数据,并提及此操作url。 我知道这个重复的问题
表格

    <form id="leadsquareForm" name="leadsquareForm" class="leadsquare-form-single-course" method="post" enctype="multipart/form-data" action="https://myUrl.jsp">
                  <h3 class="talk-to-expert" style="width: fit-content;width: -moz-fit-content; margin: 0 auto 15px;">Wish to talk to an expert?</h3>
                  <div style=" margin: 0 auto 15px; width: -moz-fit-content; width: fit-content;">
                    <a href="tel:+919599000000"><i class="fa fa-phone" style=" padding: 5px 10px; background: #25D366; color: #fff; border-radius: 7px; font-size: 30px; margin-right: 8px;"></i></a>
                    <div style="float: right; font-size: 15px; line-height: 1.3; font-weight: 600;">
                      <div style="color: #00d56b;"><a href="tel:+919599000000">+91 95990-00000</a></div>
                      <div style="color: #f2aa3c;">Call Now for Expert Counselling</div>
                    </div>
                    <!--&lt;!&ndash;<h3 style="width: fit-content; width: -moz-fit-content; margin: 0 auto">OR</h3>&ndash;&gt;-->
                  </div>
                  <div class="mdl-textfield mdl-js-textfield">
                    <input class="mdl-textfield__input" type='text' id='FirstName' name='FirstName' placeholder="Name *" required='required' />
                    <label class="mdl-textfield__label" for='FirstName'>Name *</label>
                  </div>
    
                  <div class="mdl-textfield mdl-js-textfield">
                    <input class="mdl-textfield__input" type='email' id='EmailAddress' name='EmailAddress' placeholder="Email *" required='required' />
                    <label class="mdl-textfield__label" for='EmailAddress'>Email *</label>
                  </div>
    
                  <div class="mdl-textfield mdl-js-textfield">
                    <input class="mdl-textfield__input" type='tel' id='Phone' name='Phone'  placeholder="Phone Number *" required='required' onkeypress="if(this.value.length==10){return false;}" />
                    <label class="mdl-textfield__label" for='Phone'>Phone Number *</label>
                  </div>
preventDefault()
在这种情况下,将阻止提交表单。如果您试图运行一些代码,然后提交表单,则可以尝试以下操作:

   $("#leadsquareForm").submit(function(event){
       alert('intercept');
       event.preventDefault();
       console.log(event);
       // Run some code...

       // Then submit the form
       $("#leadsquareForm").submit()
   });
$('leadsquareForm')。一个('submit',函数myFormSubmitCallback(事件){
警报(“拦截”);
event.stopPropagation();
event.preventDefault();
var$this=$(this);
$this.one('submit',myFormSubmitCallback);
});

想和专家谈谈吗?
现在请专家咨询
名字*
电子邮件*
电话号码*
提交

您是如何创建表单的?它是在页面加载之后生成的(例如在ajax调用之后)?是否存在任何控制台错误?您是否收到第一个
警报
?(对现有答案的评论表明不是)-如果是这种情况(无警报),那么您的事件没有触发,因此event.preventDefault()甚至没有运行,因此它不“工作”。是在重新加载页面后创建表单这是否回答了您的问题?更改您的
$(“#leadsquareForm”)。提交(函数(…
$(文档)。在(“提交”、“#leadsquareForm”函数(…
)上,您需要先尝试事件删除
事件.preventDefault()
,然后是
警报('intercept')
after
没关系-可以是第一个或最后一个-如果是最后一个,那么如果之前有另一个未处理的脚本错误,则可能会失败-但在这种情况下,根本没有调用它检查控制台,可能有语法错误,似乎没有调用事件处理程序。立即检查bro:)form.submit未执行。我不知道…?抱歉,请立即尝试。您没有通过表单以获取未获取事件。如果有任何问题,请评论我…!您可以检查此代码段吗?这工作正常。
   $("#leadsquareForm").submit(function(event){
       alert('intercept');
       event.preventDefault();
       console.log(event);
       // Run some code...

       // Then submit the form
       $("#leadsquareForm").submit()
   });