HtmlContainerControl.InnerHtml Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает или задает содержимое между открывающим и закрывающим тегами указанного серверного элемента управления HTML.
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
Значение свойства
Содержимое HTML между открывающим и закрывающим тегами серверного элемента управления HTML.
- Атрибуты
Исключения
Существует несколько серверных элементов управления HTML.
-или-
Серверный элемент управления HTML не является LiteralControl или DataBoundLiteralControl.
Примеры
В следующем примере кода показано, как использовать InnerHtml свойство для динамической установки текстового сообщения.
<%@ 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>
Комментарии
Используйте свойство для InnerHtml программного изменения содержимого между открывающим и закрывающим тегами серверного элемента управления HTML.
Свойство InnerHtml не кодирует автоматически специальные символы для сущностей HTML и из нее. Сущности HTML позволяют отображать специальные символы, такие как <
символ , которые браузер обычно интерпретирует как имеющие особое значение. Символ <
будет интерпретироваться как начало тега и не отображается на странице. Чтобы отобразить <
символ, необходимо использовать сущность <
.
Например, если InnerHtml свойство имеет значение "<b> Hello </b>"
, <
символы и >
не преобразуются в <
и >
соответственно. Отображаемые выходные данные будут по-прежнему: <b> Hello </b>. Браузер обнаружит <b>
теги и отобразит текст Hello полужирным шрифтом.
Внимание!
Так как текст не кодируется в ФОРМАТЕ HTML, можно внедрить скрипт в html-теги в текст. Если это свойство задается динамически с помощью введенных пользователем данных, обязательно проверьте значение, чтобы уменьшить уязвимости системы безопасности. Дополнительные сведения см. в разделе Безопасность и ввод данных пользователем.
Чтобы обеспечить автоматическое кодирование и декодирование HTML, используйте InnerText свойство .
Примечание
Если дочерние элементы управления отсутствуют, InnerHtml свойство содержит значение String.Empty.