HtmlContainerControl.InnerHtml Propiedad
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í.
Obtiene o establece el contenido que se encuentra entre las etiquetas de apertura y cierre del control de servidor HTML especificado.
public:
virtual property System::String ^ InnerHtml { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.Browsable(false)]
public virtual string InnerHtml { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.InnerHtml : string with get, set
Public Overridable Property InnerHtml As String
Valor de propiedad
El contenido HTML incluido entre las etiquetas de apertura y cierre de un control de servidor HTML.
- Atributos
Excepciones
Hay más de un control de servidor HTML.
o bien
El control de servidor HTML no es LiteralControl ni DataBoundLiteralControl.
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar la InnerHtml propiedad para establecer dinámicamente un mensaje de texto.
<%@ 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">
protected void Page_Load(object sender, EventArgs e)
{
Message.InnerHtml = Server.HtmlEncode("Welcome! You accessed this page at: " + DateTime.Now);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HtmlContainerControl Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<span id="Message" runat="server"></span>
</div>
</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 System.EventArgs)
Message.InnerHtml = Server.HtmlEncode("Welcome! You accessed this page at: " & DateTime.Now)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>HtmlContainerControl Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<span id="Message" runat="server"></span>
</div>
</form>
</body>
</html>
Comentarios
Utilice la InnerHtml propiedad para modificar mediante programación el contenido entre las etiquetas de apertura y cierre de un control de servidor HTML.
La InnerHtml propiedad no codifica automáticamente caracteres especiales hacia y desde entidades HTML. Las entidades HTML permiten mostrar caracteres especiales, como el <
carácter, que un explorador interpretaría normalmente como tener un significado especial. El <
carácter se interpretaría como el inicio de una etiqueta y no se muestra en la página. Para mostrar el <
carácter, tendría que usar la entidad <
.
Por ejemplo, si la InnerHtml propiedad se establece "<b> Hello </b>"
en , los <
caracteres y >
no se convierten en <
y >
, respectivamente. La salida representada seguirá siendo: <b> Hello </b>. El explorador detectará las <b>
etiquetas y mostrará el texto, Hello, en una fuente en negrita.
Precaución
Dado que el texto no está codificado en HTML, es posible insertar script en etiquetas HTML en el texto. Si esta propiedad se establece dinámicamente mediante la entrada del usuario, asegúrese de validar el valor para reducir las vulnerabilidades de seguridad. Para obtener más información, consulte Seguridad y entrada de usuario.
Para proporcionar codificación y descodificación HTML automáticas, use la InnerText propiedad .
Nota
Si no hay ningún control secundario, la InnerHtml propiedad contiene el valor String.Empty.