PHP结合layer处理弹出窗口提交的值

转载自:http://www.884358.com/php-layer/

在开发中经常会遇到点击按钮弹出展示表单,在表单中填写信息后,点击保存,最后返回列表页的情况。

我们想实现的比较友好的效果通常是:用户点击按钮弹出子窗口,填写完子窗口中的表单信息后,点击子窗口中的保存按钮,页面提示保存成功,并关闭子窗口,最后刷新父页面。

为了更加优雅的弹出子窗口,我们使用了layer这一款优秀的jQuery插件。在使用过程中,可以很方便的弹出我们想要的页面,例如表单填写页面。
例如如下页面:




     弹窗测试 
    
    
    





点击“点击弹出窗口”按钮,页面会弹出子窗口显示http://127.0.0.1/test/layer/f...的页面内容,form.php的代码如下:

parent.parent.layer.closeAll();parent.parent.layer.msg('添加成功,页面正在刷新');parent.parent.setTimeout('refresh()',2000);";
    die;
}
?>



     弹窗测试 
    





姓名
年龄

注意表单form的target属性是指向的本页面的iframe,target的名称即为iframe的name。当填写了表单上的信息后,点击提交按钮,页面会将form表单中的信息提交到iframe中,由于iframe没有指定src属性,所以iframe的地址是页面自己,同时设置了display:none,所以是不可见的(为了便于观察效果,你也可以暂时先把display:none删除)。所以等同于表单提交到页面自身,只不过是展示在了自身的iframe里。自身的php代码里识别到了post过来的数据,则会输出一句js代码,js代码的目的是关闭顶级父窗口的layer弹出窗,并在顶层父窗口中显示提示信息,最后让顶级父页面在两秒钟后刷新自己。

你可能感兴趣的:(php,layer,弹窗)