دریافت اطلاعات ورودی و بررسی کنترل های HTML در ASP.NET
در یک صفحه ASP.NET می توان دو نوع کنترل داشت:
کنترل های HTML و کنترل های Web.
کنترل های HTML جهت ایفای نقش همان تگ های HTML معمولی طراحی شده اند. بعبارت دیگر اگر یک صفحه HTML معمولی داشته باشیم، با تبدیل تگ های مربوطه به کنترل های HTML می توانیم سریعا آن را به یک صفحه ASP.NET تبدیل کنیم.
بعنوان مثال صفحه ساده HTML زیر را در نظر بگیرید. این صفحه حاوی یک فرم است که شما را قادر می سازد تا مثلا رنگ دلخواه خود را در آن وارد کنید.
<html>
<head><title>SimpleHTML.htm</title></head>
<body>
<form method=”post” action=”SimpleHTML.htm”>
Enter your favorite color:
<br>
<input name=”favColor” type=”text”>
<p>
<input type=”submit” value=”Submit!”>
</form>
</body>
</html>
اگر رنگ لخواه خود را وارد کرده و دکمه ارسال فرم را بزنید، اتفاق خاصی نخواهد افتاد چرا که فرم تنها اطلاعات وارد شده را به خود برمی گرداند و از آنجا که پس از ارسال فرم، پردازشی روی اطلاعات ورودی انجام نمی شود، ورودی مذکور از بین می رود.
در مثال زیر صفحه فوق به یک صفحه ASP.NET تبدیل شده است.
<html>
<head><title>SimpleASPX.aspx</title></head>
<body>
<form runat=”server”>
Enter your favorite color:
<br>
<input id=”favColor” type=”text” runat=”server”>
<p>
<input type=”submit” value=”Submit!” runat=”server”>
</form>
</body>
</html>
همانگونه که مشاهده می کنید چهار تغییر اساسی و مهم نسبت به صفحه HTML مثال قبل صورت گرفته است:
• پسوند فایل به aspx تغییر کرده است.
• مشخصه runat=”server” به همه عناصر فرم موجود اضافه شده است.
• بجای مشخصه name از مشخصه id در تگ <input> استفاده شده است.
• مشخصه های Method و Action از تگ <form> حذف شده اند زیرا فرم های ASP.NET بصورت پیش فرض به همان صفحه ارسال می شوند و دیگر نیازی به مشخصه های فوق نیست.
اگر مثال فوق را اجرا کنید خواهید دید که پس از ارسال فرم و نمایش مجدد صفحه فوق، رنگ مورد نظرتان در قسمت ورودی همچنان موجود است. بعبارت دیگر برعکس HTML معمولی، کنترل های HTML در ASP.NET مقادیر خود را بصورت خودکار در استفاده های بعدی حفظ می کنند.