Visual Basic.NET 7.x (2002/03)VBScriptVisual Basic 9 (2008)Visual Basic 8 (2005).NET 1.0.NET 1.1.NET 3.0.NET 2.0.NET 3.5初学者中级开发Javascript.NETVisual BasicASP.NET
适用于 ASP.NET 的 Web 消息框






1.46/5 (6投票s)
一个用于 ASP.NET 的消息框,用于将服务器消息发送给用户。
引言
消息框是基于 Windows 应用程序中一个非常有用的控件。对于基于 Web 的应用程序,您在客户端有类似的控件。但是,当您想将服务器端消息传达给用户时,没有现成的消息框控件。本文介绍了一种编写消息框以将服务器端消息传回给用户的一种简单方法。
使用代码
首先,我在 ASP.NET 网站中添加了一个 Module
Imports Microsoft.VisualBasic
Public Module Module1
Public Function Msg(ByVal str As String, ByVal supportVB As Boolean, _
ByVal style As MsgBoxStyle) As String
If supportVB Then
str = str.Replace("""", "'")
Return "<script language=""vbscript"" type=""text/vbscript"" >MsgBox """ & _
str & """," & CInt(style).ToString & ", ""Message Box""</script>"
Else
str = str.Replace("'", """")
Return "<script>window.alert('" & str & "')</script>"
End If
End Function
Public Function Msg(ByVal str As String) As String
Return Msg(str, False, MsgBoxStyle.Exclamation)
End Function
End Module
上面的函数检查浏览器是否支持 VBScript。如果支持,我使用 VBScript。VBScript 的消息框比 JavaScript 的消息框功能更强大。它允许您控制消息的显示图标。您可能不希望在您的成功消息中使用感叹号。
为了在网站中使用我的消息框,我还添加了一个名为 lblMessage
的 Label
控件到网页的底部。lblMessage
的 EnableViewState
设置为 False
<label id="lblMessage" enableviewstate="False" runat="server" />
现在,您可以在网页中使用消息框,如下所示
Try
'your server action
lblMessage.Text = Msg("Success Message", _
Request.Browser.VBScript, MsgBoxStyle.Information)
Catch ex As Exception
lblMessage.Text = Msg(ex.Message)
End Try
关注点
请注意,您必须将 lblMessage
的 EnableViewState
设置为 False
。ASP.NET 默认将其设置为 True
。如果将其设置为 True
,则消息将在下一次回发时保留。这意味着即使您更正了错误,消息也会继续显示。
代码
您可以从 http://download.biswaretech.com/resources.aspx?file=web_Msgbox.zip 下载我的代码的最新版本。