子頁調(diào)用父頁面
父頁面代碼
//用來供子頁面成功后調(diào)用
window.success = function(){
renderCardData();
toastr.success('策略添加成功');
};
子頁面代碼
$.ajax({
type:'post',
url:baseUrl + '/abc...',
data:JSON.stringify(data),
processData: false,
contentType: 'application/json',
success:function(res){
handleResponse(res,function(data){
//調(diào)用聲明好的方法
window.parent.success();
//關(guān)閉彈窗
var index = parent.layer.getFrameIndex(window.name); //先得到當(dāng)前iframe層的索引
parent.layer.close(index); //再執(zhí)行關(guān)閉
})
}
})
父頁面向子頁面?zhèn)髦?/h2>
父頁面代碼
var index = layer.open({
title: '編輯用戶',
type: 2,
shade: 0.2,
maxmin: true,
shadeClose: true,
area: ['100%', '100%'],
content: '../page/table/edit.html',
//打開彈窗后回觸發(fā)succes回調(diào)劣挫,有倆個(gè)參數(shù)分別是當(dāng)前層DOM當(dāng)前層索引
success: function(dom, index) {
//通過索引獲取到當(dāng)前iframe彈出層
var iframe = window['layui-layer-iframe' + index];
//調(diào)用iframe彈出層內(nèi)的方法
iframe.edit(data);
},
//關(guān)閉彈窗后觸發(fā)
end: function(){
console.log("1111")
}
});
iframe子頁面代碼
var edit = function(data) {
console.log(data)
}
也可以在父頁面通過dom直接賦值:
var index = layer.open({
title: '編輯用戶',
type: 2,
shade: 0.2,
maxmin: true,
shadeClose: true,
area: ['100%', '100%'],
content: '../page/table/edit.html',
//打開彈窗后回觸發(fā)succes回調(diào)缘滥,有倆個(gè)參數(shù)分別是當(dāng)前層DOM當(dāng)前層索引
success: function(dom, index) {
//也可以通過dom獲取iframe的元素直接賦值
let iframeDom = $(dom[0]).find("iframe").eq(0).contents();
//通過獲取的Dom直接給子頁的input賦值
iframeDom.find("input[name='username']").val(data.username)
}
});