本篇文章给大家分享的是有关layui中为什么有两次表单提交,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
(1) 一般用layui导致提交两次,会想到的是在绑定on sumit的时候没有return false,导致没有把常规提交方式拦截下来,再次访问了action
form.on('submit(formDemo)', function (data) {
var fd = new FormData($('form')[0]);
$.ajax({
type: "POST",
url: '/admin/adduser.do',
data: fd,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (res) {
if (res.status == 200) {
layer.msg(res.msg, {time: 2000});
var url = "/admin/views/users.html"; // 跳转
setTimeout(function () {
window.location.href = url
},2000);
} else {
layer.msg(res.msg, {time: 2000});
}
}
});
return false; // 这段很关键
});
(2) 然而我的问题不是这个,我访问了两次的后端接口,特别奇怪,对前端进行调试之后发现多引用了一遍layui.all.js,也就是说页面要被渲染两次,当然就被提交两次了
<script src="../assets/layui.all.js"></script>
<script src="../assets/layui.all.js" charset="utf-8"></script>
<script src="../jquery.js"></script>
以上就是layui中为什么有两次表单提交,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注天达云行业资讯频道。