PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

实例讲解php提交表单关闭layer弹窗iframe

coldplay.xixi
coldplay.xixi 转载
2020-08-14 17:15:07 2892浏览

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

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)编辑页面主要代码

<input name="dosubmit" type="submit" id="dosubmit" value="提交" class="button" >

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

public function edit_config_paiqi(){
		$id = trim($_REQUEST[&#39;id&#39;]);
		$paiqi_db = pc_base::load_model(&#39;paiqi_config_model&#39;);
		if($_REQUEST[&#39;dosubmit&#39;]){
			$insertinfo = array();
			$insertinfo[&#39;catid&#39;] = trim($_POST[&#39;catid&#39;]);
			$insertinfo[&#39;meitiid&#39;] = trim($_POST[&#39;meitiid&#39;]);
			$insertinfo[&#39;title&#39;] = trim($_POST[&#39;title&#39;]);	
			$insertinfo[&#39;meitizhuname&#39;] = trim($_POST[&#39;meitizhuname&#39;]);
			$insertinfo[&#39;meitizhuid&#39;] = trim($_POST[&#39;meitizhuid&#39;]);
			$insertinfo[&#39;createtime&#39;] = SYS_TIME;
			$insertinfo[&#39;saturation&#39;] = trim($_POST[&#39;saturation&#39;]);
			$datas = $paiqi_db->update($insertinfo,array("id"=>$id));
			if($datas){
				<span style="color:#ff0000;">showmessage(L(&#39;operation_success&#39;),&#39;?m=content&c=meiti&a=closewindow&#39;);//保存成功指向关闭窗口方法</span>
			}
		}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方法

相关学习推荐:php编程(视频)

声明:本文转载于:jb51,如有侵犯,请联系admin@php.cn删除