在关闭模式窗体时,让原窗口执行一个方法,这样应该怎么做? RT 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 form1.ShowDialog();//这里继续写你的方法 parent window 定义一个 btnClick()事件打开窗体:function window_onunload() { window.dialogArguments.btnClick(); //注意,在父窗体一定要有该事件} 我是用javascript:window.showModalDialog()打开的,这应该怎么做 Imports SystemImports System.TextImports 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 function closeDialog(){ if (! (!dialogWin.win || (dialogWin.win && dialogWin.win.closed)) ) { dialogWin.win.document.body.onUnload = "方法" ; dialogWin.win.close() }} 怎么实现5分钟后自动删除? asp.net中的cache问题 GridView 如何定义和应用全局的DataSet 谁知道drumbeater是什莫东东? 有没有单独的VB.NET的安装盘? 我用vs写代码,好多不方便的地方,大家都是怎么解决的? 求救~~~~日期控件问题,先谢拉!! 对话框的问题 散分!!!最幽默程序员竞选(冠军50,亚军20,季军10) 在.net中的msdn中有哪些好的例子? 列位大大,请教一个有关于buffer的问题
//这里继续写你的方法
function window_onunload() {
window.dialogArguments.btnClick(); //注意,在父窗体一定要有该事件
}
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
{
if (! (!dialogWin.win || (dialogWin.win && dialogWin.win.closed)) )
{
dialogWin.win.document.body.onUnload = "方法" ;
dialogWin.win.close()
}
}