本文主要为大家带来一篇layer子层给父层页面元素赋值,以达到向父层页面传值的效果实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。
父层:
jsp中:
//页面上添加一个隐藏的输入框待用于被子层设置value,从而将子层的数据传递到此页面
<input type="hidden" id="getvalue" name="getvalue" value="" />
js代码:
//设置function,当执行时,弹出子窗口并传递当前窗口名称
//弹出子窗口(选择商家)
function chosemerchant() {
//获取当前窗口名称
var parentname= window.name;
/*(由于用的ssm框架)url对应的是controller方法,并向其传递当前窗口名称,打开的窗口显示页面即
为经过controller方法后返回的页面*/
var url = root + /adposition/chosemerchant?parentname=+ parentname;
laysum = parent.layer.open({
//设置打开的子窗口效果
type : 2,
title : 选择商家,
shadeclose : true,
shade : 0.5,
shift : 0,
area : [ '40%', '863px' ],
content : url,
success: function(layero, index){
}
});
}
子层:
jsp中:
//页面添加的隐藏输入框,存储的值是经过controller方法后返回的父窗口名称,用于区分,将id设置为mainiframename
<input type="hidden" id="mainiframename" name="mainiframename" value="${parentname}">
js代码:
//设置function,当执行时,传值并关闭当前窗口
function setvalue() {
//得到“mainiframename”输入框中存储的值
var mainiframename = $(#mainiframename).val();
//判断是否为空或者是未定义
if (mainiframename != && mainiframename != undefined)
{
//此处的ifrc和winc的意义可自行查阅
var ifrc = window.parent.frames[mainiframename];
var winc = ifrc.window || ifrc.contentwindow;
try {
//设置父窗口隐藏输入框的值为hello world
winc.document.getelementbyid(getvalue).value = hello world!;
} catch (ex) {
winc.location.reload();
}
}
//关闭当前窗口
var index = parent.layer.getframeindex(window.name);
parent.layer.close(index);
}
总结:此方法用于子层直接给父层元素赋值,从而达到传值的效果,关键点在于需要将父层窗口名称传递到子层中。
以上就是小编为大家带来的layer子层给父层页面元素赋值,以达到向父层页面传值的效果实例的全部内容了,希望大家喜欢哦~
相关推荐:
jquery基于json对象自动给表单元素赋值
以上就是layer子层给父层页面元素赋值实例讲解的详细内容。
