ung dung web chuong 4
TRANSCRIPT
Muc tiêu Giơi thiêu HTML Control
Phân loai Validation Control
Giai thich Code Behind
Thưc thi Code behind
Giơi thiêu HTML ControlGiơi thiêu HTML Control Cac phân tư HTML trong tâp tin ASP.NET file đươc xư ly la chuôi thông
thương. Cac phân tư nay không thê truy xuât qua lâp trinh. Nêu muôn chung ta
phai chi ra cac phân tư HTML đươc phân tich va xư ly như la môt điêu khiên server
Co thê thưc hiên băng cac thêm thuôc tinh runat="server" vao phân tư HTML
Thuôc tinh id cua phân tư HTML cho phep chung ta lâp trinh tham chiêu đên cac phân tư.
Cac điêu khiên server phai đươc đăt bên trong the <form> cung vơi thuôc tinh runat="server".
Giơi thiêu HTML ControlGiơi thiêu HTML Control……
HtmlForm– Dung đê tao môt container cho cac phân tư trong trang.
HtmlImage – Dung đê hiên thi môt hinh anh.
HtmlInputFile– Dung đê tai môt tâp tin lên server.
HtmlInputFile – Vi duHtmlInputFile – Vi du<%@ Page Language="C#" AutoEventWireup="True" %><html> <script runat="server"> void BtnUpload_Click(Object sender, EventArgs e) { // Display information about posted file FileName.InnerHtml = MyFile.PostedFile.FileName; MyContentType.InnerHtml =
MyFile.PostedFile.ContentType; ContentLength.InnerHtml =
MyFile.PostedFile.ContentLength.ToString(); FileDetails.Visible = true; // Save uploaded file to server
MyFile.PostedFile.SaveAs("c:\\Inetpub\\uploadfile.doc");
} </script>
HtmlInputFile - OutputHtmlInputFile - Output
<body> <form action="Ch4Ex1.aspx" method="post" enctype="multipart/form-data" runat="server"><h1>Upload File on the server</h1> Select File : <input id="MyFile" type="file" runat="server"><br><br> <input type=submit value="Upload File" OnServerclick="BtnUpload_Click" runat="server"> <br><br><br> <div id="FileDetails" Visible=false runat="server"> FileName: <span id="FileName" runat="server"/> <br> ContentType: <span id="MyContentType" runat="server"/><br>
HtmlInputFile - OutputHtmlInputFile - Output
ContentLength: <span id="ContentLength" runat="server"/>bytes <br> </div> </form> </body></html>
Môt sô điêu khiên HTML ServerMôt sô điêu khiên HTML Server
Điêu khiên Mô ta
HtmlAnchor Cho phep liên kêt đên trang Web khac
HtmlButton Cho phep tao nut nhân
HtmlInputImage Cho phep tao nut nhân(hiên thi dung hinh anh)
HtmlInputText Cho phep nhân môt dong văn ban.
HtmlInputRadioButton Cho phep tao môt radio button
HtmlSelect Cho phep tao môt list control
HtmlTextArea Cho phep môt ô nhâp liêu nhiêu dong
HtmlTable Cho phep tao bang
Validation ControlNgăn chăn trương nhâp trông
So sanh hai trương
Kiêm tra theo vung
Kiêm tra gia tri theo biêu thưc
Kiêm tra gia tri tai client hay server
Danh sach tât ca cac lôi trong trang
RequiredFieldValidator – Vi duRequiredFieldValidator – Vi du
<html> <form runat="server">
<center><b>User Details Page</b> </center> <br> Name :     <asp:textbox id="txtName" runat=server /> <asp:requiredfieldvalidator
controltovalidate="txtName" display="static" errormessage="Name has to be entered!" runat=server/>
<br><br> <center><asp:button id= btnSubmit text="submit"
runat=server /> </center> </form></html>
Không nhâp gia tri
Không nhâp gia tri
Thông bao lôiThông bao lôi
RequiredFieldValidator - RequiredFieldValidator - OutputOutput
RequiredFieldValidator – Thuôc RequiredFieldValidator – Thuôc tinhtinh
Controltovalidate thuôc tinh chi điêu khiên cân đươc kiêm tra hơp lê.
Errormessage thuôc tinh dung đê chi ra thông bao lôi hiên thi khi sư dung điêu khiên RequiredFieldValidator trong trang.
Khi gan Display la static, môt khoang không gian nao đo trên trang đươc danh cho thông bao lôi ngươc lai cho trương hơp gan la dynamic.
CompareValidator – Ví du 1<html> <form runat="server">
<center><b>User Details Page</b></center><br>Name :    <asp:textbox id="txtName" runat=server /><asp:requiredfieldvalidator id="reqvaln"
controltovalidate="txtName" errormessage="Name has to be entered" display="dynamic" runat=server/>
<br>Age :       <asp:textbox id="txtAge" runat=server /><asp:requiredfieldvalidator id="reqvala"
controltovalidate="txtAge" errormessage="Age has to be entered" display="dynamic" runat=server/>
CompareValidator – Vi du 1CompareValidator – Vi du 1
<asp:comparevalidator controltovalidate="txtAge" display="dynamic" errormessage="Age cannot be greater than 58" valuetocompare=58 type="Integer" operator="LessThanEqual" runat=server>
</asp:comparevalidator><br><br><center><asp:button id=btnSubmit text="submit"
runat=server/></center>
</form></html>
CompareValidatorCompareValidator – Thuôc tinh– Thuôc tinh Thuôc tinh kiêu cua dung đê chi ra kiêu dữ liêu cua hai gia tri cân so sanh:
String Integer Double Date Currency
Thuôc tinh Operator property dung đê chi ra kiêu so sanh đươc thưc hiên: Equal == NotEqual != GreaterThan > GreaterThanEqual >= LessThan < LessThanEqual <=
CompareValidator – Ví du 2<html> <form runat="server">
<center><b>User Details Page</b></center><br>Name : <asp:textbox id="txtName" runat=server /><asp:requiredfieldvalidator id="reqvaln"
controltovalidate="txtName" errormessage="Name has to be entered" display="dynamic" runat=server/>
<br>Age : <asp:textbox id="txtAge" runat=server /><asp:requiredfieldvalidator id="reqvala"
controltovalidate="txtAge" errormessage="Age has to be entered" display="dynamic" runat=server/>
CompareValidator – Vi du 2CompareValidator – Vi du 2
<asp:comparevalidator controltovalidate="txtAge" display="dynamic" errormessage="Age cannot be greater than 58" valuetocompare=58 type="Integer" operator="LessThanEqual" runat=server/>
<br>Date of Birth : <asp:textbox id="txtDob" runat=server /><br>Date of Joining :<asp:textbox id="txtDoj" runat=server /><asp:comparevalidator controltovalidate="txtDoj"
display="dynamic" errormessage="Date of Birth cannot be greater than or equal to Date of Joining" Controltocompare="txtDob" type="Date" operator="GreaterThan" runat=server/>
CompareValidator – Vi du 2CompareValidator – Vi du 2
<br><br><center><asp:button id=btnSubmit text="submit"
runat=server /></center> </form></html>
RangeValidatorRangeValidator
RangeValidator dung đê kiêm tra gia tri trong môt khoan nao đo.
Miên gia tri co thê dưa trên 2 control nao đo hoăc miên gia tri cô đinh nao đo.
<asp:textbox id="txtAge" runat=server/><asp:rangevalidator controltovalidate="txtAge" type="Integer" minimumvalue="18" maximumvalue="58"errormessage="Your age must be in the range of 18-58 yrs" display="dynamic" runat="server" ></asp:rangevalidator>
RegularExpressionValidatorRegularExpressionValidator
Gia tri nhâp vao control theo môt đinh dang nao đo, vi du: đia chi email hay điên thoai.
Gia tri nhâp vao phai khơp vơi mẫu đươc chi ra trong thuôc tinhValidationExpression.
RegularExpressionValidator Cac kí hiêu
Kí hiệu Ý nghĩa
^ Chỉ ra vi trí bắt đầu kiêm tra
$ Chỉ ra vi trí kiêm tra kêt thuc
[] Kiêm tra gia tri nhâp vào khớp với cac kí tự trong []
\w Cho phep kí tự bât ki
\d{} “\d” chỉ ra gia tri nhâp vào phai là số, {} chỉ ra chiêu dài của chuỗi số
+ Chỉ ra môt hay nhiêu cac phần tử thêm vào biêu thức phai được kiêm tra
RegularExpressionValidator Code Snippet
<asp:textbox id="txtEmailid" runat=server/><asp:regularexpressionvalidator controltovalidate="txtEmailid" display="static" validationexpression="^[\w-]+@[\w-]+\.(com|net|org|edu)$" runat=server>E-mail Id is not in the correct format</asp:RegularExpressionValidator>
CustomValidatorCustomValidator CustomValidator dung trong cac trương hơp cac control ở trên
không đap ứng đươc kiêm tra hơp lê dữ liêu
Những control nay gọi thưc hiên ham tai phia client hoăc server.
Code Snippet
<asp:customvalidator runat="server" controltovalidate="txtGrade" clientvalidationfunction="clientval"onservervalidate="serverval" display="static">Wrong value</asp:customvalidator>
ValidationSummaryValidationSummary Lôi kiêm tra hơp lê trên trang co thê đươc hiên thi theo 2 cach:
Lôi co thê đươc hiên thi luc tiêu điêm trên control bi mât Tât ca cac thông bao lôi trên trang co thê đươc hiên thi cung nhau
Control ValidationSummary co thê dung đê tao cac thông bao lôi tom tắt
Lôi co thê đươc xem theo dang list, bullets, hay đoan
Code Snippet -
<asp:validationsummary id="ValSum" headertext="The errors found are: " displaymode="singleparagraph" runat="server"/>
Thuôc tinh Page.IsValidThuôc tinh Page.IsValid Đôi tương Page co thuôc tinh IsValid, no tra vê
true nêu tât ca kiêm tra hơp lê la thanh công, tra vè vê false nêu thâm chi co môt điêu khiên kiêm tra không thanh công
Ngươi dung co thê điêu hương đên môt trang khac hay hiên thi lôi phu hơp
Page.IsValid Ví du<html> <form runat="server">
<script language="C#" runat="server" >void subbtn(Object Src, EventArgs E){ if (Page.IsValid == true) { lblMessage.Text = "Page is Valid!"; }} </script><center><b>User Details Page</b></center><br><br><asp:label id="lblMessage" runat="server"/><br><br>Name : <asp:textbox id="txtName" runat=server />
Page.IsValid Vi duPage.IsValid Vi du<asp:requiredfieldvalidator id="reqvaln"
controltovalidate="txtName" errormessage="Name has to be entered" display="dynamic" runat=server/>
<br>Age :
<asp:textbox id="txtAge" runat=server /><asp:requiredfieldvalidator id="reqvala"
controltovalidate="txtAge" errormessage="Age has to be entered" display="dynamic" runat=server/>
<asp:comparevalidator controltovalidate="txtAge" display="dynamic" errormessage="Age cannot be greater than 58" valuetocompare=58 type="Integer" operator="LessThanEqual" runat=server/>
<br>
Page.IsValid Vi duPage.IsValid Vi du
Date of Birth : <asp:textbox id="txtDob"
runat=server /><br>Date of Joining :<asp:textbox id="txtDoj"
runat=server /><asp:comparevalidator
controltovalidate="txtDoj" display="dynamic" errormessage="Date of Birth cannot be greater than or equal to Date of Joining" Controltocompare="txtDob" type="Date" operator="GreaterThan" runat=server/>
<br><br><center><asp:button id=btnSubmit
text="submit" onclick="subbtn" runat=server /></center>
Page.IsValid Property – Kết xuấtPage.IsValid Property – Kết xuất
<asp:validationsummary id="ValSum" headertext="Errors are: " displaymode="bulletlist" runat="server"/> </form></html>
<%@ Page ClientTarget= DownLevel %> <%@ Page ClientTarget= DownLevel %>
disable client-side validation
Trinh duyêt mức thâp và cao
Code BehindCode Behind Đê giam đô phức tap khi tao trang web vơi hinh anh va chât
lương. ASP.Net cung câp kĩ thuât “Code Behind”. Chung ta co thê viêt code theo yêu câu chức năng trong môt tâp
tin tach biêt hơn la nhung lẫn lôn vao trong trang Web. Tâp tin class chứa cac ham đươc tao trong tâp tin .cs
<%@ Page language="C#" Inherits="codebehind" %> <html> <form runat="server">
<center><b>User Details Page</b></center> <asp:label id="lblMessage" runat="server"/><br>
Name :               <asp:textbox id="txtName" runat=server /><asp:requiredfieldvalidator id="reqvaln"
controltovalidate="txtName" errormessage="Name has to be entered" display="dynamic" runat=server/>
<br>Age :               <asp:textbox id="txtAge" runat=server /><asp:requiredfieldvalidator id="reqvala"
controltovalidate="txtAge" errormessage="Age has to be entered" display="dynamic" runat=server/>
Provides the functionality
Code Behind – Ví du
A
<asp:comparevalidator controltovalidate="txtAge" display="dynamic" errormessage="Age cannot be greater than 58" valuetocompare=58 type="Integer" operator="LessThanEqual" runat=server/><br>Date of Birth :    <asp:textbox id="txtDob" runat=server /><br>Date of Joining :<asp:textbox id="txtDoj" runat=server /><asp:comparevalidator controltovalidate="txtDoj" display="dynamic" errormessage="Date of Joining cannot be greater than or equal to date of Birth" Controltocompare="txtDob" type="Date" operator="GreaterThan" runat=server/><br> <br><center><asp:button id=btnSubmit text="submit" onclick="subbtn" runat=server /></center><asp:validationsummary id="ValSum" headertext="Errors are: " displaymode="bulletlist" runat="server"/></form></html>
Code Behind Vi du…Code Behind Vi du…
A
using System;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;
public class codebehind: Page{
public System.Web.UI.WebControls.Label lblMessage;
public System.Web.UI.WebControls.Button btnSubmit;
using System;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;
public class codebehind: Page{
public System.Web.UI.WebControls.Label lblMessage;
public System.Web.UI.WebControls.Button btnSubmit;
BIN
Code Behind Vi du…Code Behind Vi du…