asp.net(for vb)自定义服务器控件a.ascx中如何调用b.aspx作为模式窗体,并得到b.aspx返回的值?

解决方案 »

  1.   

    //b.aspx
    private void ConfirmBtn_Click(object sender, System.EventArgs e)
    { str.Append("<script language='javascript'>");
    str.Append(Environment.NewLine);
    str.Append("window.opener.document.all['");
    str.Append(Request.QueryString["src"]);
    str.Append("'].value = '");
    str.Append(ReasonBox.Text);
    str.Append("';");
    str.Append(Environment.NewLine);
    str.Append("window.close();");
    str.Append(Environment.NewLine);
    str.Append("</script>");

    this.Page.Controls.Add(new LiteralControl(str.ToString()));
    }//下面的函数放在a.aspx的javascript里
    function  pickReason(src)
    {
    window.open("b.aspx?src="+src,"_blank","height = 260,width = 300,left=100,top=100,location = no,menubar = no,toolbar=no,toolbar=no",true);

    }//在html里放一个超连接
    <A href="javascript:pickReason('reason');"></A>
      

  2.   

    主页面:   retval = window.showModalDialog (_
       "dialog.htm",_
       Array(iName.value,iColor(iColor.selectedIndex).value,something),_
       "dialogWidth:20; dialogHeight:20")打开子页面,而retval为返回值。子页面:
    <script language=vbscript>
    Sub doneit_onclick()
       returnValue = Array("Yahoo!", uname.value)
       window.close
    End Sub
    </script>这是关闭的按钮的响应函数