热门关键字:
jquery > jquery教程 > jquery教程 > layer.open使用post方法

layer.open使用post方法

517
作者:管理员
发布时间:2021/2/3 15:59:12
评论数:0
转载请自觉注明原文:http://www.jq-school.com/Show.aspx?id=3796
一、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. 调用子页面方法的方式发生了改变,如上实例。




如果您觉得本文的内容对您的学习有所帮助:支付鼓励



关键字:jQuery
友荐云推荐