Layer彈層(父子傳值,兄弟傳值)


需求:最外面列表界面點修改彈出LayerA界面,再點擊LayerA界面中的選擇地圖坐標按鈕彈出LayerB地圖界面

這個過程涉及到的:

1:LayerA將坐標傳給LayerB,LayerB在地圖上顯示坐標。

2:LayerB選完坐標點擊確定后,地圖關閉,LayerB將坐標傳回LayerA

 

 

 

 

列表界面點擊修改按鈕彈出LayerA界面

 

 

 

LayerB界面點擊彈出地圖事件

 

 LayerB地圖界面點擊確定傳值給LayerA

 

 

1:LayerA與LayerB是什么關系?

兄弟關系,如果是父子關系,子的頁面會嵌套在父頁面里,無法實現子頁面比父頁面大

關鍵代碼:

parent.layer.open(options);//點擊LayerB按鈕時,以兄弟頁面的形式彈出

2:如何將LayerB地圖上坐標的值傳給LayerA

監聽地圖,將點擊的坐標傳給頁面上的一個label保存,在提交的時候讀取labael,並通過jq的以id來拿到frame元素的方式,將label的值賦值給兄弟頁面的一個文本框里。

關鍵代碼:

var i = $("#lb1").val();

$(parent.frames["Form"].document).find("#AreaPoint").val(i);//LayerB的Frame的id 叫Form,事先在layer的id屬性里定義過了
var index = parent.layer.getFrameIndex(window.name);//獲取當前頁面的name 即HomePeopleForm 都是通過父頁面(即列表頁)來操作子頁面里的元素
parent.layer.close(index);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM