form表单遇上settimeout
程序员文章站
2023-12-21 15:54:22
...
form表单
form表单提交的时候默认会刷新当前页面
<div class="wrap">
<p class="desc">form表单测试</p>
<div class="form-wrap">
<form>
<div class="input-wrap">
<label for="suggestTitle">标题*:</label>
<input id="suggestTitle" type="text" required>
</div>
<button id="submitBtn">提 交</button>
</form>
</div>
</div>
$.ajax({
type: 'POST',
url: "xxxxxx",
data: JSON.stringify(params),
async: false,
contentType: "application/json",
processData: false,
success: function (res) {
if(res.code){
alert("error");
setTimeout(function () {
console.log('111');
},2000)
}else {
alert("success");
setTimeout(function () {
console.log('222');
},2000)
}
},
问题
这是我们小学弟遇到的问题,settimeout不执行。
解决
我执行代码的时候发现提交完,页面就刷新了,但是代码里没有刷新的代码,于是我想到了form表单的刷新,我把form去掉之后,果然页面就不在刷新了,settimeout完美执行。
方案
1.弃用form
2.如果还是想用form,那么在form里面写下,return false;
3.如果使用bootstrap之类的话,记得看下自己是否使用了form。