100 分!! 父页 parent.aspx 用 window.showModalDialog 弹出一个子页 child.aspx,子页中如何把值传到父页?
父页 parent.aspx 用 window.showModalDialog 方法弹出一个子页 child.aspx
子页 child.aspx 中有一个按钮Button1,
child.aspx.CS 代码如下:
private void Button1_Click(object sender, System.EventArgs e)
{
string mycode = ...;
//我的要求在这里:写一方法,关闭 child.aspx ,同时要把 mycode 的值带到父窗口 parent.aspx 中
}
父窗口parent.aspx 中假如有一个 TextBox1 ,
当执行子窗口child.aspx的Button1_Click事件关闭子窗口时,
要把子窗口的string mycode = ...; 值赋给父窗口parent.aspx 中的 TextBox1
------解决方案--------------------function OpenDia(url){
var sFea = 'dialogWidth:470px; dialogHeight:370px;center:yes;status:no;help:no;scroll:no;edge:raised;unadorned:no ';
var rv =window.showModalDialog(url, 'creCol ',sFea);
if(rv != null && rv != " ")
{
window.location.reload();
}
}
上面主窗口JS代码
下面是对话里的代码
<script> window.returnValue = "你要返回的值 "; </script>
主窗口的rv就是你要返回的值
看的明白哇?
这个直接能用,我正在用这个直接抄下来的,保证 没问题的
------解决方案--------------------string script = " <Script language= 'javascript '> var ary = new Array( ' "+mycode1+ " ', ' "+mycode2+ " ');window.returnValue=ary;window.close(); </script> ";
Response.Write(script);
Response.End();
------解决方案--------------------父窗口
var ary = window.showModalDialog( "子窗口 ", "参数 ");
if(ary != null)
{
document.getElementById( "TextBox1 ").value = ary[0];
document.getElementById( "TextBox2 ").value = ary[1];
}
------解决方案--------------------放父窗口
url就是子窗口的url
function OpenDia(url){
var sFea = 'dialogWidth:470px; dialogHeight:370px;center:yes;status:no;help:no;scroll:no;edge:raised;unadorned:no ';
var rv =window.showModalDialog(url, 'creCol ',sFea);
if(rv != null && rv != " ")
{
window.location.reload();
}
}
这个放子窗口
<script> window.returnValue = "你要返回的值 "; </script>