要求:在父页弹出页面层,确认提交按钮并成功提示刷新父层
子页:
<form class="layui-form" id="admin">
<div class="layui-form-item">
<label class="layui-form-label">名称</label>
<div class="layui-input-inline">
<input name="name" lay-verify="required" placeholder="请输入" autocomplete="off" class="layui-input" style="width: 200px;" type="text" {notempty name="$Colourtype.name"}value="{$Colourtype.name}"{/notempty}>
</div>
</div>
{notempty name="$Colourtype"}
<input type="hidden" name="id" value="{$Colourtype.id}">
{/notempty}
<div class="layui-form-item" style="display: none;">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="admin" id="dosubmit">立即提交</button>
</div>
</div>
</form>
<script>
layui.use(['layer', 'form'], function() {
var layer = layui.layer,
$ = layui.jquery,
form = layui.form;
$(window).on('load', function() {
form.on('submit(admin)', function(data) {
$.ajax({
url:"{:url('admin/goods/publish_type')}",
data:$('#admin').serialize(),
type:'post',
//async: false,
success:function(res) {
if(res.code == 1) {
var index = parent.layer.getFrameIndex(window.name);
parent.layer.msg(res.msg,{time:2*1000},function() {
});
parent.layer.close(index);
parent.setTimeout("location.reload()","2000");
} else {
parent.layer.msg(res.msg);
}
}
})
return false;
});
});
});
</script>
<a href="javascript:void(0);" class="layui-btn layui-btn-sm" onclick="winner_up(2,'新增颜色','','{:url('admin/goodscate/publish')}','600px','420px')">新增颜色</a>
父页JS:
function winner_open(type,title,id,PathImg,w,h){
layer.open({
type: type,
title: title,
anim: '1',
shade: [0.3, '#393D49'],
maxmin: true, //开启最大化最小化按钮
area: [w,h],
content: PathImg,
btn: ['确认', '关闭'],
yes: function(index, layero){
var iframeWin = window[layero.find('iframe')[0]['name']];//获取子页面索引
var form = iframeWin.document.getElementById('dosubmit');//获取提交按钮
form.click();//触发提交按钮
}, function(index){
layer.close(index);
return false;// 取消
}
});
}
PS:
子父页互传本文重要有
子赋父 加 parent. 如 layer.close(index); 要给父页提示就 parent.layer.close(index);
子页面还用到一个 延时刷新也是赋给父页刷新 parent.setTimeout("location.reload()","2000");