Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. |
Traducción
Original
|
ClientScriptManager.RegisterArrayDeclaration (Método)
Registra una declaración de matriz JavaScript con el objeto Page utilizando un nombre y un valor de matriz.
Ensamblado: System.Web (en System.Web.dll)
Parámetros
- arrayName
- Tipo: System.String
Nombre de matriz que se va a registrar.
- arrayValue
- Tipo: System.String
Valor o valores de matriz que se va a registrar.
| Excepción | Condición |
|---|---|
| ArgumentNullException |
El valor de arrayName es null. |
El método RegisterArrayDeclaration comprueba si una matriz registrada existe con el mismo nombre que el nombre especificado en el parámetro arrayName y, en ese caso, agrega los valores especificados en el parámetro arrayValue. Dado que el mecanismo de almacenamiento subyacente se basa en el objeto ArrayList, se permiten duplicados. Si una matriz registrada con el mismo nombre que el parámetro arrayName no existe, se crea y se le agregan los valores en el parámetro arrayValue.
Si desea literales de cadena en la matriz JavaScript resultante, incluya comillas simples (') o comillas dobles (\") de escape en el parámetro arrayValue. El valor del parámetro arrayValue debe ser un elemento único. Si es necesario agregar más de un valor a la matriz, haga varias llamadas mediante el método RegisterArrayDeclaration.
En el ejemplo de código siguiente se muestra el uso de los métodos RegisterArrayDeclaration y RegisterHiddenField. El ejemplo registra una matriz y un valor oculto y define el evento OnClick de un botón <input> para calcular la suma de dos valores de la matriz y el valor oculto.
<%@ Page Language="C#"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <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));} </"); cstext.Append("script>"); cs.RegisterClientScriptBlock(cstype, csname, cstext.ToString(), false); } } </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" onclick="DoClick()" value="Run Script" /> </form> </body> </html>
Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2
.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.