FrmCustomValidator - 아이디 글자수 체크하는 유효성 검사 컨트롤
.NET프로그래밍/ASP.NET 3.5 SP1 2009. 10. 13. 11:37 |
* 여기서는 "ASP.NET의 유효성 검사 컨트롤"인 [FrmCustomValidator.aspx] 와 "HTML레벨"의 [FrmCustomValidator.htm]의 예제로 각각 비교해보았다.
==> [FrmCustomValidator.aspx] 소스 및 디자인
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="FrmCustomValidator.aspx.cs"
Inherits="FrmCustomValidator" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script>
function ClientValidate(sender, args) {
if (args.Value.length < 3 || args.Value.length > 12) {
args.IsValid = false;
}
else {
args.IsValid = true;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
아이디 :
<asp:TextBox ID="txtUserID" runat="server"></asp:TextBox><br />
<asp:Button ID="btnOK" runat="server" Text="확인" />
<br />
<asp:CustomValidator ID="CustomValidator1" runat="server"
ControlToValidate="txtUserID"
ClientValidationFunction="ClientValidate"
ErrorMessage="아이디는 3자이상 12자 이하"
onservervalidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
</div>
</form>
</body>
</html>
-------------------------------------------------------------------------------------
==> [FrmCustomValidator.aspx.cs] 소스
using System;
using System.Web.UI.WebControls;
public partial class FrmCustomValidator : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
string userId = args.Value; // 지정된 텍스트박스의 값을 받아서.
if (userId.Length < 3 || userId.Length > 12)
{
args.IsValid = false; // 에러
}
else
{
args.IsValid = true; // 유효성 통과
}
}
}
-------------------------------------------------------------------------------------
[실행결과]
--> 위의 소스코드에서 "if문"으로 제한한 범위( if (args.Value.length < 3 || args.Value.length > 12) )에 어긋나게 '텍스트박스'에 텍스트를 입력후 '확인'버튼을 누르면 아래그림과 같이 "CustomValidator"컨트롤에 빨간글씨로 '에러메시지'가 출력된다.
-------------------------------------------------------------------------------------
==> [FrmCustomValidator.htm] 소스 및 디자인
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function CheckNum() {
var obj = document.getElementById("txtEven");
if (obj.value % 2 == 0) {
alert("통과");
}
else {
alert("에러");
}
}
</script>
</head>
<body>
짝수만 입력 : <input type="text" id="txtEven" /><br />
<input type="button" value="짝수만 입력" onclick="CheckNum();" />
</body>
</html>
-------------------------------------------------------------------------------------
[실행결과]
--> [FrmCustomValidator.htm] 소스코드의 "if문"의 조건( if (obj.value % 2 == 0) )에 맞게 '텍스트박스'에 텍스트('짝수')를 입력후 '짝수만 입력'버튼을 누르면 아래그림과 같이 '메시지박스'가 출력된다.
--> '텍스트박스'에 '홀수('5')'를 입력후 '짝수만 입력'버튼을 누르면 아래그림과 같이 '메시지박스'가 출력된다.
'.NET프로그래밍 > ASP.NET 3.5 SP1' 카테고리의 다른 글
WebUpload(자료실 게시판) (0) | 2009.10.14 |
---|---|
FrmValidationSummary - '예외(오류)메세지'를 한 곳에 모아서 따로 보여주거나 메세지박스에 출력하는 유효성 검사 컨트롤 (0) | 2009.10.13 |
FrmRegularExpressionValidator (정규식 검사) - 이메일 및 홈페이지주소 검사할 때 쓰임 (0) | 2009.10.13 |
FrmCompareValidator (비교) (0) | 2009.10.13 |
FrmRangeValidator (범위) (0) | 2009.10.13 |