Серверные элементы управления являются метки, которые понят сервером.
Ограничения в классическом ASP
Список ниже был скопирован из предыдущей главы:
<html>
<body bgcolor="yellow">
<center>
<h2>Hello w3ii!</h2>
<p> <%Response.Write(now())%> </p>
</center>
</body>
</html>
Приведенный выше код иллюстрирует ограничение в классическом ASP: блок кода должен быть размещен, где вы хотите, чтобы вывод появляться.
С классическим ASP невозможно отделить исполняемый код от самого HTML. Это делает страницу трудно читать, и трудно поддерживать.
Серверные элементы управления - ASP.NET
ASP.NET решена "spaghetti-code" проблемы , описанной выше , с сервером управления.
Серверные элементы управления являются метки, которые понят сервером.
Есть три вида серверных элементов управления:
- Серверные элементы управления HTML - Традиционные HTML теги
- Элементы управления веб-сервера - Новые теги ASP.NET
- Элементы управления сервера Validation - для проверки входных данных
Элементы управления HTML сервера - ASP.NET
Серверные элементы управления HTML являются HTML-теги понят сервером.
HTML элементы в файлах ASP.NET, по умолчанию, рассматриваются как текст. Для того, чтобы эти элементы программируемыми, добавьте RUNAT = атрибут «сервер» в HTML-элемент. Этот атрибут указывает, что элемент должен рассматриваться в качестве серверного элемента управления. id атрибут добавляется для идентификации серверного элемента управления. Reference ID может быть использован для управления серверного элемента управления во время выполнения.
Note: Все элементы управление HTML - сервер должны быть в пределах <form> тег с runat="server" атрибутом. runat="server" атрибут указывает , что форма должна быть обработана на сервере. Он также указывает на то, что вложенные элементы управления могут быть доступны серверными скриптами.
В следующем примере мы объявляем серверный элемент управления HtmlAnchor в файле .aspx. Тогда мы манипулируем HRef атрибута управления HtmlAnchor в обработчик событий (an event handler is a subroutine that executes code for a given event) , (an event handler is a subroutine that executes code for a given event) . Событие Page_Load является одним из многих событий, которые понимают ASP.NET:
<script runat="server">
Sub Page_Load
link1.HRef="http://www.w3ii.com"
End Sub
</script>
<html>
<body>
<form runat="server">
<a id="link1" runat="server">Visit w3ii!</a>
</form>
</body>
</html>
Сам исполняемый код был перемещен за пределы HTML.
ASP.NET - Управление веб-сервера
управления веб-сервера специальные теги ASP.NET понят сервером.
Как серверные элементы управления HTML, элементы управления веб-сервера также создаются на сервере, и они требуют RUNAT = атрибут «сервера», чтобы работать. Тем не менее, управление веб-сервер не обязательно сопоставить с существующими HTML элементов, и они могут представлять собой более сложные элементы.
Синтаксис для создания элемента управления веб-сервера является:
<asp:control_name id="some_id" runat="server" />
В следующем примере мы объявляем серверный элемент управления Button в файле .aspx. Затем мы создаем обработчик события Click событие, которое изменяет текст на кнопке:
<script runat="server">
Sub submit(Source As Object, e As EventArgs)
button1.Text="You clicked me!"
End Sub
</script>
<html>
<body>
<form runat="server">
<asp:Button id="button1" Text="Click me!"
runat="server" OnClick="submit"/>
</form>
</body>
</html>
Управление Validation Server - ASP.NET
Проверка сервер управление используется для проверки введенного пользователя. Если пользователь-вход не проходит проверку, то будет выведено сообщение об ошибке пользователя.
Каждый элемент управления проверки выполняет определенный тип проверки (например, проверки в отношении определенного значения или диапазона значений).
По умолчанию проверка страницы выполняется, когда кнопка, ImageButton или управления LinkButton щелкают. Вы можете предотвратить проверку, когда кнопка управления нажата, установив свойство CausesValidation ложь.
Синтаксис для создания серверного элемента управления Validation является:
<asp:control_name id="some_id" runat="server" />
В следующем примере мы объявляем один элемент управления TextBox, один элемент управления Button, и один элемент управления RangeValidator в качестве .aspx файла. Если проверка не пройдена, текст "The value must be from 1 to 100!" будет отображаться в элементе управления RangeValidator:
пример
<html>
<body>
<form runat="server">
<p>Enter a number from 1 to 100:
<asp:TextBox id="tbox1" runat="server" />
<br /><br />
<asp:Button Text="Submit" runat="server" />
</p>
<p>
<asp:RangeValidator
ControlToValidate="tbox1"
MinimumValue="1"
MaximumValue="100"
Type="Integer"
Text="The value must be from 1 to 100!"
runat="server" />
</p>
</form>
</body>
</html>
Показать пример »