整理之前項目涉及的一些知識點。
詳細版請查閱layer的開發文檔:https://www.layui.com/doc/modules/layer.html
1. 引入layer.js
<script src="static/layer/layer.js" type="text/javascript"></script>
2.script編寫函數調用,例:
<script type="text/javascript">
function addInfo(){
var url=basePath+"/addInfo.action";
layer.open({
type: 2,
title: '添加信息',
shadeClose: false,
shade: [0.8, '#000'],
area: ['1200px', '600px'],
content: url,
success: function(layero, index){//彈出層回調成功的方法
var body = layer.getChildFrame('body', index);
var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe頁的窗口對象,執行iframe頁的方法:iframeWin.method();上面的type是2,所以是iframe
iframeWin.$("#name").val(“222”);//父頁面給iframe(彈框)id爲name的屬性賦值,通常用於彈框回顯數據
},
yes: function(index, layero){//確認回調的方法
var name = layero.find("iframe")[0].contentWindow.$("#name").val();//獲取iframe(彈框)id爲name的屬性值,通常用於獲取值校驗必填
},
cancel: function(index, layero){//關閉回調的方法
if(confirm('確定要關閉麼')){ //只有當點擊confirm框的確定時,該層纔會關閉
layer.close(index)
}
return false;
}
});
}
</script>
注意幾個點:
-
參數之前要用英文逗號(,)隔開
-
type: 基本層類型,類型爲number,默認爲0;可傳入值有0(信息框,默認)、1(頁面層)、2(iframe層)、3(加載層)、4(tips層)
-
title:標題,類型爲string/Array/Boolean,默認爲"信息",若你想丁文標題文本和樣式: title: ['文本', 'font-size:18px;'] ;不想顯示標題欄: title: false
-
shadeClose:是否點擊遮罩關閉,默認是false
-
content : 內容,類型爲String/DOM/Array,默認爲‘’,示例傳的url,如果不想出現滾動條,可以用 content: ['http://sentsin.com', 'no']
-
shade:遮罩,類型爲String/Array/Boolean,默認爲0.3,示例中shade: [0.8, '#000']的第二個參數爲顏色
-
area:寬高,類型爲String/Array,默認爲'auto',在默認狀態下,layer是寬高都自適應的
-
回調方法注意參數列表順序!success 和 yes 、cancel的參數順序不一樣!