RT

解决方案 »

  1.   

    form1.ShowDialog();
    //这里继续写你的方法
      

  2.   

    parent window 定义一个 btnClick()事件打开窗体:
    function window_onunload() {
            window.dialogArguments.btnClick(); //注意,在父窗体一定要有该事件
    }
      

  3.   

    我是用javascript:window.showModalDialog()打开的,这应该怎么做
      

  4.   


    Imports System
    Imports System.Text
    Imports System.Web.UI''' -----------------------------------------------------------------------------
    ''' Project  : ModalDialog
    ''' Class  : webmodules.ModalDialog
    ''' 
    ''' -----------------------------------------------------------------------------
    ''' <summary>
    ''' 操作模态窗口,如弹出,关闭,触发事件等操作
    ''' </summary>
    ''' <res>
    ''' </res>
    ''' <history>
    '''  [Mrhjw] 2005-2-28 Created
    ''' </history>
    ''' -----------------------------------------------------------------------------
    Public Class ModalDialog    ''' -----------------------------------------------------------------------------
        ''' <summary>
        ''' 打开一个模态窗口
        ''' </summary>
        ''' <param name="Url">地址</param>
        ''' <param name="ctrl">页面中需要返回的控件名称(数组)</param>
        ''' <param name="width">窗体宽度</param>
        ''' <param name="height">窗体高度</param>
        ''' <param name="page">Page类</param>
        ''' <res>
        ''' </res>
        ''' <history>
        '''  [Mrhjw] 2005-2-28 Created
        ''' </history>
        ''' -----------------------------------------------------------------------------
        Public Shared Sub Open(ByVal Url As String, ByVal ctrl() As String, ByVal width As Integer, ByVal height As Integer, ByVal page As Page)        Dim sb As New StringBuilder        If Url.IndexOf("?") = -1 Then '//此Url已经传有参数
                Url += "?rand=" & New Random().Next.ToString
            Else
                Url += "&rand=" & New Random().Next.ToString
            End If        sb.Append("<script language='javascript'>" & vbCrLf)
            sb.Append("var a = window.showModalDialog('" & Url & "',window,'status:false;status:no;scroll:no;help:no;dialogWidth:" & width & "px;dialogHeight:" & height & "px')" & vbCrLf)
            sb.Append("if(a!=null){" & vbCrLf)        Dim i, counts As Integer
            counts = ctrl.Length - 1
            sb.Append("var b = new Array(")        For i = 0 To counts
                If i = 0 Then
                    sb.Append("'" & ctrl(i).Trim & "'")
                Else
                    sb.Append("," & "'" & ctrl(i).Trim & "'")
                End If
            Next
            sb.Append(")" & vbCrLf)        sb.Append("for(i=0;i<a.length;i++)" & vbCrLf)
            sb.Append("{" & vbCrLf)        For i = 0 To counts
                sb.Append("document.all(b[i]).value=a[i];" & vbCrLf)
            Next        sb.Append("}" & vbCrLf)
            sb.Append("}" & vbCrLf)
            sb.Append("</script>")        page.RegisterStartupScript("Key", sb.ToString)
        End Sub    ''' -----------------------------------------------------------------------------
        ''' <summary>
        ''' 打开一个模态窗体
        ''' </summary>
        ''' <param name="Url">地址</param>
        ''' <param name="ctrl">页面中需要返回的控件名称(数组)</param>
        ''' <param name="button">需要触发的页面控钮名称</param>
        ''' <param name="width">窗体宽度</param>
        ''' <param name="height">窗体高度</param>
        ''' <param name="page">Page 类</param>
        ''' <res>
        ''' </res>
        ''' <history>
        '''  [Mrhjw] 2005-2-28 Created
        ''' </history>
        ''' -----------------------------------------------------------------------------
        Public Shared Sub Open(ByVal Url As String, ByVal ctrl() As String, ByVal button As String, ByVal width As Integer, ByVal height As Integer, ByVal page As Page)        Dim sb As New StringBuilder        If Url.IndexOf("?") = -1 Then '//此Url已经传有参数
                Url += "?rand=" & New Random().Next.ToString
            Else
                Url += "&rand=" & New Random().Next.ToString
            End If        sb.Append("<script language='javascript'>" & vbCrLf)
            sb.Append("var a = window.showModalDialog('" & Url & "',window,'status:false;status:no;scroll:no;help:no;dialogWidth:" & width & "px;dialogHeight:" & height & "px')" & vbCrLf)        sb.Append("if(a!=null){" & vbCrLf)        Dim i, counts As Integer
            counts = ctrl.Length - 1        sb.Append("var b = new Array(")        For i = 0 To counts
                If i = 0 Then
                    sb.Append("'" & ctrl(i).Trim & "'")
                Else
                    sb.Append("," & "'" & ctrl(i).Trim & "'")
                End If
            Next
            sb.Append(")" & vbCrLf)        sb.Append("for(i=0;i<a.length;i++)" & vbCrLf)
            sb.Append("{" & vbCrLf)        For i = 0 To counts
                sb.Append("document.all(b[i]).value=a[i];" & vbCrLf)
            Next
            sb.Append("}" & vbCrLf)        sb.Append("document.all('" & button & "').click();")        sb.Append("}" & vbCrLf)
            sb.Append("</script>")        page.RegisterStartupScript("Key", sb.ToString)
        End Sub    ''' -----------------------------------------------------------------------------
        ''' <summary>
        ''' 关闭弹出的模态窗口
        ''' </summary>
        ''' <param name="page">Page类</param>
        ''' <res>
        ''' </res>
        ''' <history>
        '''  [Mrhjw] 2005-2-28 Created
        ''' </history>
        ''' -----------------------------------------------------------------------------
        Public Shared Sub Close(ByVal page As Page)
            page.RegisterStartupScript("key", "<script language='javascript'>window.close();" & "<" & "/script>")
        End Sub    ''' -----------------------------------------------------------------------------
        ''' <summary>
        ''' 关闭弹出的模态窗口,并返回值
        ''' </summary>
        ''' <param name="Values">返回的值集合</param>
        ''' <param name="page">Page类</param>
        ''' <res>
        ''' </res>
        ''' <history>
        '''  [Mrhjw] 2005-2-28 Created
        ''' </history>
        ''' -----------------------------------------------------------------------------
        Public Shared Sub Close(ByVal Values() As String, ByVal page As Page)        Dim sb As New StringBuilder
            sb.Append("<script language='javascript'>" & vbCrLf)
            sb.Append("var a = new Array(")        Dim i, counts As Integer
            counts = Values.Length - 1
            For i = 0 To counts
                If i = 0 Then
                    sb.Append("'" & Values(i).ToString.Trim & "'")
                Else
                    sb.Append(", '" & Values(i).ToString.Trim & "'")
                End If
            Next
            sb.Append(")" & vbCrLf)
            sb.Append("window.returnValue = a" & vbCrLf)
            sb.Append("window.close();" & vbCrLf)
            sb.Append("</script>")
            page.RegisterStartupScript("Key", sb.ToString)    End SubEnd Class
      

  5.   

    function closeDialog()
    {
    if (! (!dialogWin.win || (dialogWin.win && dialogWin.win.closed)) )
    {
    dialogWin.win.document.body.onUnload = "方法" ;
    dialogWin.win.close()
    }
    }