【Layui】ajax&回调函数

问题:一个简单的AJAX提交表单操作,经常发生后台数据保存好了,前端layer弹出层没有关闭,父页面没有刷新,定位发现是回调函数没有执行!!!用Google Chrome浏览器这种现象较少,而 Safari 和 firefox 浏览器100%发生。

解决过程:困扰了很久,以为是哪里代码有问题,检查来检查去没发现问题,后来基本定位到 layUI 这个框架。

结果:加上 红色字体 return false,解决!!

<script>
	layui.use(['layer','form'], function(){
		var layer = layui.layer
           ,form = layui.form;
           
		//监听表单提交
		form.on('submit(go)', function(data){
			$.ajax({
				url:'userAction_addOrUpdate.action',
				method:'post',
				data:data.field,
				dataType:'JSON',
				success:function(res){
					if(res.code='0'){
						parent.closeIframe(res.msg);
					}
					else
						alert(res.msg);
				},
				error:function(data){
					alert("服务器繁忙");
				}
			})
			return false;//如果不加这句,则ajax的回调函数不执行
		});
	});
</script>

官方文档说明:

//监听表单提交
form.on('submit(*)', function(data){
  console.log(data.elem) //被执行事件的元素DOM对象,一般为button对象
  console.log(data.form) //被执行提交的form对象,一般在存在form标签时才会返回
  console.log(data.field) //当前容器的全部表单字段,名值对形式:{name: value}
  return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值