日期:2014-05-17  浏览次数:20475 次

子窗体获取父窗体的控件内容
做了一个选人功能,在子窗体是按部门和角色进行选人,要得到父窗体的标签

<input type="hidden" id="PersonId" name="UserId" runat="server" value=""/>

子窗体通过window.parent.opener。document.getElementById("PersonId").value得到值,

向value添加被选人的Id。

错误提示:找不到value值;;





求解脱,这问题把我郁闷了半天了.....

------解决方案--------------------
用showModalDialog,是无法通过window.opener打开,注意是window.opener,不是window.parent 那个主要用于iframe

你可以换用window.open来打开,或者还是继续使用showModalDialog,只不过可以在showModalDialog的时候把父页面的值传给子页面
------解决方案--------------------
打开窗体的时候把父窗体的window对象传入子窗体中,例:window.showModalDialog("xxx.html",window,"");
然后在子窗体传接收window对象
var parwindow=window.dialogArguments;
然后你想获取父窗体那个控件的内容直接
parwindow.document.getElementById("控件id").value
或设置父窗体控件的值
parwindow.document.getElementById("控件id").value