ClientScriptManager.RegisterArrayDeclaration Method (String, String)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Registers a JavaScript array declaration with the Page object using an array name and array value.

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

public void RegisterArrayDeclaration(
	string arrayName,
	string arrayValue


Type: System.String

The array name to register.

Type: System.String

The array value or values to register.

Exception Condition

arrayName is null.

The RegisterArrayDeclaration checks to see whether a registered array exists with the same name as the name specified in the arrayName parameter and, if so, adds the values specified in the arrayValue parameter. Because the underlying storage mechanism is based on an ArrayList, duplicates are allowed. If a registered array with the same name as the arrayName parameter does not exist, it is created and the values in the arrayValue parameter added to it.

If you want string literals in the resulting JavaScript array, include single quotation marks (') or escaped double quotation marks (\") in the arrayValue parameter. The value of the arrayValue parameter should be a single element. If more than one value needs to be added to the array, make multiple calls using the RegisterArrayDeclaration method.

The following code example demonstrates the use of the RegisterArrayDeclaration and RegisterHiddenField methods. The example registers an array and a hidden value and defines the OnClick event of an <input> button to calculate the sum of two values of the array and the hidden value.

<%@ Page Language="C#"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<script runat="server">

  public void Page_Load(Object sender, EventArgs e)
    // Define the array name and values.
    String arrName = "MyArray";
    String arrValue = "\"1\", \"2\", \"text\"";

    // Define the hidden field name and initial value.
    String hiddenName = "MyHiddenField";
    String hiddenValue = "3";

    // Define script name and type.
    String csname = "ConcatScript";
    Type cstype = this.GetType();

    // Get a ClientScriptManager reference from the Page class.
    ClientScriptManager cs = Page.ClientScript;

    // Register the array with the Page class.
    cs.RegisterArrayDeclaration(arrName, arrValue);

    // Register the hidden field with the Page class.
    cs.RegisterHiddenField(hiddenName, hiddenValue);

    // Check to see if the  script is already registered.
    if (!cs.IsClientScriptBlockRegistered(cstype, csname))
      StringBuilder cstext = new StringBuilder();
      cstext.Append("<script type=\"text/javascript\"> function DoClick() {"); 
      cstext.Append("Form1.Message.value='Sum = ' + ");
      cstext.Append("(parseInt(" + arrName + "[0])+");
      cstext.Append("parseInt(" + arrName + "[1])+");
      cstext.Append("parseInt(" + Form1.Name + "." + hiddenName + ".value));} </");
      cs.RegisterClientScriptBlock(cstype, csname, cstext.ToString(), false);
<html xmlns="" >
    <title>ClientScriptManager Example</title>
     <form    id="Form1"
     <input type="text"
            id="Message" />
     <input type="button" 
            value="Run Script" />

.NET Framework
Available since 2.0
Return to top