Отправляет email-рассылки с помощью сервиса Sendsay

Уроки по ASP.NET с сайта progs.biz

  Все выпуски  

Уроки по ASP.NET с сайта progs.biz


Информационный Канал Subscribe.Ru

Уроки по ASP.NET. Рассылки сайта progs.biz
Рассылка № 3
 
Начало > ASP.NET > Основы > Урок 3

М. Фленов. Программирование на C++ глазами хакера.
М. Фленов. Программирование на C++ глазами хакера
Заказать на Озоне

Подробнее


Полные версии уроков (с картинками): урок 3.

Основы ASP.NET
Урок 3. Разбор HTML-кода

На прошлом уроке мы написали наше первое ASP.NET-приложение. Посмотрим на код, который мы получили на клиентский стороне (для просмотра этого кода выберите View->Source в Internet Explorer'е (при показанной странице, разумеется)):

  ...
  <body ms_positioning="GridLayout">
    <form name="Form1" method="post" action="WebForm1.aspx" id="Form1">
<input type="hidden" name="__VIEWSTATE" value=
"dDwtMzkwOTIwNjM5OztsPGFkZDthZGQ7c3ViO3N1YjttdWw7
bXVsO2RpdjtkaXY7Pj6LSUQD5V2pp+uq1Wbnuz94crQ+kA==" />

      <input name="TextBox1" type="text" id="TextBox1"
      style="Z-INDEX: 101; LEFT: 82px; xPOSITION: absolute; TOP: 117px" />
      <input name="TextBox2" type="text" id="TextBox2"
      style="Z-INDEX: 102; LEFT: 82px; xPOSITION: absolute; TOP: 146px" />
      <input type="submit" name="Button1" value="Calculate"
      id="Button1" style="Z-INDEX: 103; LEFT: 82px;
      xPOSITION: absolute; TOP: 176px" />
      <span style="Z-INDEX: 104; LEFT: 247px; xPOSITION: absolute;
      TOP: 118px">
      <input id="add" type="radio" name="gr" value="add" />
      <label for="add">+</label></span>
      <span style="Z-INDEX: 105; LEFT: 247px; xPOSITION: absolute;
      TOP: 144px">
      <input id="sub" type="radio" name="gr" value="sub" />
      <label for="sub">-</label></span>
      <span style="Z-INDEX: 106; LEFT: 247px; xPOSITION: absolute;
      TOP: 168px">
      <input id="mul" type="radio" name="gr" value="mul" />
      <label for="mul">*</label></span>
      <span style="Z-INDEX: 107; LEFT: 247px; xPOSITION: absolute;
      TOP: 191px">
      <input id="div" type="radio" name="gr" value="div" />
      <label for="div">/</label></span>
      <span id="Label1" style="Z-INDEX: 108; LEFT: 92px;
      xPOSITION: absolute; TOP: 210px"></span>
    </form>
  </body>
  ...

Как вы видите, на клиентской стороне мы получаем обычный html-код. Весь код, как видно из этого фрагмента, содержит в себе форму (обратите внимание на тег <form>). При нажатии на кнопку с типом submit и надписью Calculate пользователь переходит на эту же самую страницу (так как для нашей формы Form1 мы указали для атрибута action значение WebForm1.aspx, а это и есть имя нашей web-страницы).

Внутри формы мы расположили несколько html-элементов: кнопки, текстовые поля и др. Для каждого такого элемента пользовательского интерфейса существует атрибут ID - обратите внимание, что этот атрибут является аналогом свойства name в программировании под Windows. Именно по значению этого ID мы и обращаемся к нашим элементам в C#-коде.

Смотрим сгенерированный код далее. Так как все элементы должны иметь абсолютное расположение, то для всех них мы в атрибуте style задали как значения LEFT и TOP, так и установили POSITION в absolute.

И, наконец, последнее в разбираемом нами коде - а именно загадочные строки

...<input type="hidden" name="__VIEWSTATE" value=
"dDwtMzkwOTIwNjM5OztsPGFkZDthZGQ7c3ViO3N1YjttdWw7
bXVsO2RpdjtkaXY7Pj6LSUQD5V2pp+uq1Wbnuz94crQ+kA==" />
 ...

расположенные внутри формы. Это некоторое скрытое (type="hidden") поле, предназначенное для сохранения состояния нашей web-страницы. Содержимое этого поля никак не показывается на web-странице, а его работу можно увидеть, например, так: задайте в нашей странице какие-нибудь значения для полей, выберите некоторое арифметическое действие и нажмите на кнопке Calculate. Появится результат вычисления. После этого перезагрузите web-страницу (F5 в Internet Explorer'е) - значения заполненых текстовых полей, выбранное арифметическое действие и результат вычислений сохраняться! Сохраняться они именно в этом скрытом текстовом поле. Кстати, обратите внимание, что если посетитель задаст другие данные для вычисления (например, вместо 2+2 захочет узнать, сколько будет 30-22), то и значение для этого скрытого поля будет другим.

Рассылки сайта progs.biz
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2005 сайт progs.biz
© 2002-2005 Алексеев Игорь

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.asplessons
Отписаться

В избранное