原来的网站用了showModalDialog来弹出框、传参,在chrome等浏览器上很不给力,兼容性太差,所以使用了js layer迅速升级了一下。
1、原来的弹出页把旧的传参代码删除,留一个hidden记录参数就行。
2、父窗体上把旧的收参代码删除
#selectinfo 就是 hidden 的id,当选好参数关闭子窗体时触发传参到父窗体
<script src="js/jquery-1.8.3.js" type="text/javascript"></script>
<script src="js/layer/layer.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$('#btn_addname').click(function () {
$.layer({
type: 2,
shadeClose: true,
title: false,
closeBtn: [1, true],
shade: [0.6, '#000'],
border: [0],
offset: ['20px', ''],
area: ['242px', ($(window).height() - 25) +'px'],
iframe: { src: 'SelectPerson.aspx' },
close: function (index) { document.getElementById("receivername").value = layer.getChildFrame('#selectinfo', index).val(); }
});
});
</script>
3、如果需要弹出层操作父窗体,可以用$(sector,window.parent.document)操作
关闭使用var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);