在alert里面加入一个页面,子页面传值父页面

Posted 小小小龙龙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在alert里面加入一个页面,子页面传值父页面相关的知识,希望对你有一定的参考价值。

把easyDialog v2.0这个插件加入到了项目中,在做选择部门功能时运用这个插件,在easyDialog.open里面的content函数中套了一个iframe标签,把部门页面的地址放入到src中

<iframe id="iframe" src="<%=basePath %>admin/login/deptno" frameborder="no" border="0" height="240"></iframe>,这样当我们点击部门文本框时就换弹出一个包含部门列表的alert页面。

遇到的问题:1、当子页面向父页面传值时不知道怎么传值?

解决方法:在子页面定义两个变量,id和name,然后在ztree的插件的初始化方法中对这两个变量进行赋值

子页面运用了ztree插件,下面这个方法是ztree的初始化放中的一部分。

callback: {

onClick: function(event, treeId, treeNode){
id = treeNode.id;
name = treeNode.name;

}
},

最后在父页面中通过jquert把子页面上的值取过来,父页面js代码如下:

$(function(){

var btnFn = function( e ){
var cwin=document.getElementById("iframe").contentWindow;
var id=cwin.id; //取子页面的值
var name = cwin.name;
//var deptnoname = document.getElementById("demoBtn1").value(name);
$("#demoBtn1").val(name);//把取过来的值赋予父页面上的input属性中
$("#deptnoId").val(id);
//alert(name);
return true;
};
$(‘#demoBtn1‘).click( function(){
easyDialog.open({
container : {
header : ‘选择部门‘,
content : ‘<iframe id="iframe" src="<%=basePath %>admin/login/deptno" frameborder="no" border="0" height="240"></iframe>‘,
yesFn : btnFn,
noFn : true,

},
fixed : false
});
});
});

当我在点击alert的确认按钮就可以把子页面的部门id和name都取到父页面,然后赋值在input框中。

以上是关于在alert里面加入一个页面,子页面传值父页面的主要内容,如果未能解决你的问题,请参考以下文章

03、vue 页面跳转传值,父子组件传值

vue+elementui 页面弹出框

两个jsp页面如何传值

怎样在父页面里获取加载(iframe)另一个网页的高度(父页面获取iframe里面加载页面的高度)

js传值到iframe中

c# mdi父子窗口,传值问题