Page.RegisterStartupScript(String, String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Precaución
The recommended alternative is ClientScript.RegisterStartupScript(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202
Emite un bloque de script de cliente en la respuesta a la página.
public:
virtual void RegisterStartupScript(System::String ^ key, System::String ^ script);
public virtual void RegisterStartupScript (string key, string script);
[System.Obsolete("The recommended alternative is ClientScript.RegisterStartupScript(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202")]
public virtual void RegisterStartupScript (string key, string script);
abstract member RegisterStartupScript : string * string -> unit
override this.RegisterStartupScript : string * string -> unit
[<System.Obsolete("The recommended alternative is ClientScript.RegisterStartupScript(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202")>]
abstract member RegisterStartupScript : string * string -> unit
override this.RegisterStartupScript : string * string -> unit
Public Overridable Sub RegisterStartupScript (key As String, script As String)
Parámetros
- key
- String
Clave única que identifica un bloque de script.
- script
- String
Contenido del script que se enviará al cliente.
- Atributos
Ejemplos
En el ejemplo de código siguiente se muestra el uso del RegisterStartupScript método junto con el IsStartupScriptRegistered método . Si el ECMAScript escrito en el bloque de declaración de código aún no se ha registrado, según lo determinado por el IsStartupScriptRegistered método , se realiza una RegisterStartupScript llamada.
<%@ 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)
{
String csname1 = "PopupScript";
String csname2 = "ButtonClickScript";
if (!IsClientScriptBlockRegistered(csname1))
{
String cstext1 = "<script type=\"text/javascript\">" +
"alert('Hello World');</" + "script>";
RegisterStartupScript(csname1, cstext1);
}
if (!IsClientScriptBlockRegistered(csname2))
{
StringBuilder cstext2 = new StringBuilder();
cstext2.Append("<script type=\"text/javascript\"> function DoClick() {");
cstext2.Append("Form1.Message.value='Text from client script.'} </");
cstext2.Append("script>");
RegisterClientScriptBlock(csname2, cstext2.ToString());
}
}
</script>
<html >
<head>
<title>RegisterClientScriptBlock Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<input type="text" id="Message" /> <input type="button" value="ClickMe" onclick="DoClick()" />
</form>
</body>
</html>
<%@ 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 EventArgs)
Dim csname1 As String = "PopupScript"
Dim csname2 As String = "ButtonClickScript"
If Not IsClientScriptBlockRegistered(csname1) Then
Dim cstext1 As String = "<script type=""text/javascript"">" & _
"alert('Hello World');</" & "script>"
RegisterStartupScript(csname1, cstext1)
End If
If Not IsClientScriptBlockRegistered(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>")
RegisterClientScriptBlock(csname2, cstext2.ToString())
End If
End Sub
</script>
<html >
<head>
<title>RegisterClientScriptBlock Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<input type="text" id="Message" /> <input type="button" value="ClickMe" onclick="DoClick()" />
</form>
</body>
</html>
Comentarios
De forma similar al RegisterClientScriptBlock método , el RegisterStartupScript método emite el script justo antes de la etiqueta de cierre del Page elemento del <form runat= server>
objeto. Asegúrese de incluir elementos de apertura y cierre <script>
alrededor de la cadena de bloque de script especificada en el script
parámetro .
Dado que este método usa una clave para identificar el bloque de script, el bloque de script no tiene que emitirse en el flujo de salida cada vez que lo solicite una instancia de control de servidor diferente.
Los bloques de script con los mismos key
valores de parámetro se consideran duplicados.
Nota:
No olvide incluir etiquetas de comentario HTML en torno al script para que no se represente si el explorador solicitante no admite scripts.
El método RegisterStartupScript está desusado. Por ello, utilice el método RegisterStartupScript en la clase ClientScriptManager.