php 提交表单 关闭layer弹窗iframe

介绍一款非常好用的前端弹窗插件:

layer 官网地址: http://layer.layui.com/

根据官方的API:layer的iframe弹窗

//iframe层-父子操作
layer.open({    
   type: 2,   
   area: ['700px', '530px'],  
   fix: false, //不固定   
   maxmin: true,   
 content: 'test/iframe.html'
});

这里以php开发为例 演示如何 提交表单后自动关闭layer弹窗

(1)弹出layer编辑框 :

function edit(id){
	if(id==null||id==''||id=='undefined'){
			alert('操作编号为空,请联系管理员');
	}

	layer.open({
	    type: 2,
	    area: ['700px', '530px'],
	    fix: false, //不固定
	    maxmin: true,
	    content: 'index.php?m=content&c=meiti&a=edit_paiqi&id='+id
	});
}


(2)编辑页面主要代码
 
  
 
  


(3)php后台保存数据并指向一个关闭layer窗口的方法

public function edit_config_paiqi(){
		$id =  trim($_REQUEST['id']);
		$paiqi_db = pc_base::load_model('paiqi_config_model');
		if($_REQUEST['dosubmit']){
			$insertinfo = array();
			$insertinfo['catid'] = trim($_POST['catid']);
			$insertinfo['meitiid'] = trim($_POST['meitiid']);
			$insertinfo['title'] = trim($_POST['title']);	
			$insertinfo['meitizhuname'] = trim($_POST['meitizhuname']);
			$insertinfo['meitizhuid'] = trim($_POST['meitizhuid']);
			$insertinfo['createtime'] = SYS_TIME;
			$insertinfo['saturation'] = trim($_POST['saturation']);
			$datas = $paiqi_db->update($insertinfo,array("id"=>$id));
			if($datas){
				showmessage(L('operation_success'),'?m=content&c=meiti&a=closewindow');//保存成功指向关闭窗口方法
			}
		}else{
			$datas = $paiqi_db->select(array("id"=>$id));
			$template = "edit_config_paiqi";
			include $this->admin_tpl($template);
		}
	}
	/**
	 * 关闭layer层
	 */
	public function closewindow(){
		$template = "close_layer";
		include $this->admin_tpl($template);
	}

(4)关闭窗口并刷新父窗口页面的关键代码

$(function(){
	parent.location.reload();//刷新父窗口  
	parent.layer.closeAll();//关闭所有layer窗口
});
注意:该页面需要加载layer需要的js库才能使用layer方法





你可能感兴趣的:(layer插件)