layer.open傳值

最近在作一個後臺項目,正好碰上了要使用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從後臺獲取到,而後再放到具體的位置,而後再展現~~

相關文章
相關標籤/搜索