最近在作一個後臺項目,正好碰上了要使用layer.open,就順手記錄一下,方便之後遇到了有個參考 - 2016/11/7html
layer 這個是一個web彈層組件,挺好用的...而後項目框架是SSM...web
layer.open主要是用來彈出來一個iframe彈窗,而後用來展現數據也行,用來修改也行,此次記錄的主要是展現,展現我想要展現的數據,我須要的頁面...ajax
layer.open({app
type: 1, title: '帳戶信息詳情', shadeClose: true, shade: false, maxmin: true, //開啓最大化最小化按鈕 area: ['893px', '600px'], content: xxxxxxxxx
});框架
其餘的不看,單看content,由於content的內容就是須要展現的內容jsp
第一種方法,很簡單,我想要看一個已經存在的頁面,好比說百度,或者項目中某個頁面 直接寫地址測試
layer.open({ui
type: 2, title: '不少時候,咱們想最大化看,好比像這個頁面。', shadeClose: true, shade: false, maxmin: true, //開啓最大化最小化按鈕 area: ['893px', '600px'], content: 'http://fly.layui.com/' });
layer.open({url
type: 2, title: '用戶信息。', shadeClose: true, shade: false, maxmin: true, //開啓最大化最小化按鈕 area: ['893px', '600px'], content: '/test/user/info' + uid });
後面的uid多是你須要傳遞的某些參數之類的...具體的根據你controller來定code
第二種方法,將須要的內容寫到頁面上,而後在使用的時候調用
jsp頁面:
<div id='info' style = "display : none">
我是內容
</div>
而後在js裏面調用
layer.open({
type: 1, title: '帳戶信息詳情', shadeClose: true, shade: false, maxmin: true, //開啓最大化最小化按鈕 area: ['893px', '600px'], content: $("#info").html()
});
第三種方法,直接在js裏面拼接...好凶殘...
var html = "<div class='wrapper' id='detailsinfo'>" +
"<div class='detailsdiv'>" + "<p><label>賬號:</label>" + '測試賬號' +"</p>" + "</div></div>"
layer.open({
type: 1, title: '帳戶信息詳情', shadeClose: true, shade: false, maxmin: true, //開啓最大化最小化按鈕 area: ['893px', '600px'], content: html
});
我如今使用的就是這三種方法,也許還有更好的方法,之後發現了再記錄
對於方法一:由於是使用已經存在的controller和頁面,因此傳值什麼都比較方便,須要什麼值就獲取什麼值傳遞什麼值...可是有些頁面可能我不想讓別人經過url直接就訪問到...那就能夠用第二種和第三種...所需的數據直接經過ajax從後臺獲取到,而後再放到具體的位置,而後再展現~~