ClientScriptManager.IsClientScriptBlockRegistered Method (String)

 

Determines whether the client script block is registered with the Page object using the specified key.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

Public Function IsClientScriptBlockRegistered (
	key As String
) As Boolean

Parameters

key
Type: System.String

The key of the client script block to search for.

Return Value

Type: System.Boolean

true if the client script block is registered; otherwise, false.

Call this method before calling the RegisterClientScriptBlock method to avoid registering duplicate scripts. This is particularly important if the script requires a large amount of server resources to create.

A client script is uniquely identified by its key and its type. Scripts with the same key and type are considered duplicates.

This overload of the IsClientScriptBlockRegistered method calls the overload that takes both a key and a type parameter with the type set as a Page object

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

    ' Define the name and type of the client scripts on the page.
    Dim csname1 As String = "PopupScript"
    Dim csname2 As String = "ButtonClickScript"
    Dim cstype As Type = Me.GetType()

    ' Get a ClientScriptManager reference from the Page class.
    Dim cs As ClientScriptManager = Page.ClientScript

    ' Check to see if the startup script is already registered.
    If (Not cs.IsStartupScriptRegistered(cstype, csname1)) Then

      Dim cstext1 As String = "alert('Hello World');"
            cs.RegisterStartupScript(cstype, csname1, cstext1)

    End If

    ' Check to see if the client script is already registered.
    If (Not cs.IsClientScriptBlockRegistered(cstype, csname2)) Then

      Dim cstext2 As New StringBuilder()
            cstext2.Append("<script type=""text/javascript""> function DoClick() {")
      cstext2.Append("Form1.Message.value='Text from client script.'} </")
      cstext2.Append("script>")
            cs.RegisterClientScriptBlock(cstype, csname2, cstext2.ToString())

    End If

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ClientScriptManager Example</title>
  </head>
  <body>
     <form id="Form1"
         runat="server">
        <input type="text" id="Message" /> <input type="button" value="ClickMe" onclick="DoClick()" />
     </form>
  </body>
</html>

.NET Framework
Available since 2.0
Return to top
Show: