layer.open使用post方法
发布日期:2021-05-06 07:25:21 浏览次数:103 分类:技术文章

本文共 1438 字,大约阅读时间需要 4 分钟。

一、layer.open GET方式说明

如下段代码所示,是最常见的layer.open使用方式。这里有几点需要说明:

1. type 基本层类型,layer提供了5种层类型。可传入的值有:0(信息框,默认)、1(页面层)、2(iframe层)、3(加载层)、4(tips层)。

2. layer.open其底层采用的就是get请求方式,因此使用layer.open的弹出层页面传参只能是拼接在url后面。

3. 对于type=2的弹出框,可以使用图示中的方法调用子页面弹出框的doSubmit() 方法,并获取该方法的返回值。

layer.open({	type: 2,	area: ["900px", "520px"],	title: "子页面-弹出框",	content: "${basePath}/aaa/bbb/get?id=1",	btn: ['确定', '关闭'],	yes: function (index, layero) {		// 调用子页面(弹出框)的doSubmit方法并获取其返回值        var iframeWin = layero.find('iframe')[0];        var data = iframeWin.contentWindow.doSubmit();	},	cancel: function (layer_window) {        // 关闭弹出框页面		layer.close(layer_window);	}});

二、layer.open POST方式介绍

由于layer.open其底层就是get请求方式,因此,如果需要使用post请求的话,必须要引入其他方式,这里采用ajax。

思路:用ajax通过post方式传参请求到页面的html,然后通过layer.open方法展示出来。

$.ajax({	type: "POST",	url: "${basePath}/aaa/bbb/post",	data: {"id":1, "type":2, "code":3},	success: function(res) {        var html = res.data;		layer.open({			type: 1,			area: ["900px", "520px"],			title: "子页面-弹出层",			content: html,			btn: ['确定', '关闭'],			yes: function (index, layero) {                // 调用子页面(弹出框)的doSubmit方法并获取其返回值				var context = layero.find('page').context;				var data = context.defaultView.doSubmit();			},			cancel: function (layer_window) {                // 关闭弹出框页面				layer.close(layer_window);			}		});	}});

如上段代码所示,是layer.open post请求页面的方放。这里有几点需要说明:

1. type必须为1,因为这里layer.open的content是直接给出HMTL代码的。

2. 调用子页面方法的方式发生了改变,如上实例。

上一篇:随笔一
下一篇:MySQL性能优化说明

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年03月19日 07时44分22秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章