js에서 사용자가 입력한 값이 비어 있는지 확인하는 것은 모두가 많이 사용하는 작업입니다. 쓸 내용은 없지만 참고로 제 코드가 잘 작성되었다고 생각합니다. 시간.
이것은 내 프로젝트 중 하나의 사용자 등록 페이지에서 가져온 것입니다. 이는 대부분의 사람들에게 거의 100% 경험된 것입니다.
코드를 게시하면 이 코드는 모두 js로 작성되었습니다. 읽을 때 두 js 클래스만 구별하면 어렵지 않고 이해하기 쉽습니다.
첫 페이지 코드: reguser.aspx
다음과 같이 코드 코드를 복사합니다.
<%@ 페이지 언어="c#" Codebehind="RegUser.aspx.cs" AutoEventWireup="false" Inherits="Enterprise.Web.RegUser" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<머리>
<title>사용자 등록</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK rel="stylesheet" type="text/css" href="/CSS/EnterpriseWebSite.css">
<script src="/js/CommonFunction.js" ></script>
<스크립트>
var reg = {};
reg.userName = '';
reg.password = '';
reg.confirmPassword = '';
reg.question = '';
reg.answer = '';
reg.url = '';
reg.sex = 1;
reg.email = '';
reg.tel = '';
reg.mobile = '';
reg.qq = '';
reg.address = '';
reg.postalcode = '';
reg.form = null;
함수 btnSubmit_onclick()
{
reg.form = document.forms[0];
var comFun = 새로운 commonFunction();
if(!comFun.checkIsEmpty(reg.form))
{
거짓을 반환;
}
if(comFun.$getElementById('txtPassword').value!=comFun.$getElementById('txtConfirmPassword').value)
{
Alert('입력한 두 비밀번호가 일치하지 않습니다.');
comFun.$getElementById('txtConfirmPassword').select();
거짓을 반환;
}
reg.userName = comFun.$getElementById('txtUserName');
reg.password = comFun.$getElementById('txtPassword');
reg.question = comFun.$getElementById('txtQuestion');
reg.answer = comFun.$getElementById('txtAnswer');
reg.url = comFun.$getElementById('txtUrl');
reg.email = comFun.$getElementById('txtEmail');
reg.tel = comFun.$getElementById('txtTel');
reg.mobile = comFun.$getElementById('txtMobile');
reg.qq = comFun.$getElementById('txtQQ');
reg.address = comFun.$getElementById('txtAddress');
reg.postalcode = comFun.$getElementById('txtPostalcode');
var es = comFun.$getElementsByName('sex');
var eL = es.length;
for(var i=0; i<eL; i++)
{
var e = es[i];
if(e.checked)
{
reg.sex = e.값;
부서지다;
}
}
RegUser.Reg(reg.userName.value, reg.password.value, reg.question.value, reg.answer.value, reg.url.value, reg.sex.value, reg.email.value, reg.tel. 값, reg.mobile.value, reg.qq.value, reg.address.value, reg.postalcode.value, callback_Reg);
}
함수 callback_Reg(res)
{
var rv = res.value;
만약(rv)
{
Alert('등록이 완료되었습니다!');
window.location.href='/Default.aspx';
}
또 다른
{
Alert('오류가 발생하여 등록에 실패했습니다! 사용자 이름이나 도메인 이름이 다른 사람에 의해 등록되었을 수 있습니다!');
}
}
// 해당 사용자 이름의 도메인 이름이 다른 사용자에 의해 등록되었는지 확인합니다.
함수 checkIsRegistered(obj, errorS, t)
{
var v = obj.value;
var rv = RegUser.CheckIsRegistered(v, t).value;
만약(rv)
{
경고(오류S);
obj.select();
거짓을 반환;
}
}
</script>
</head>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="서버">
<table align="center" cellpadding="3" cellpacing="0">
<tr>
<td><div align="right">사용자 이름:</div>
</td>
<td><input type="text" id="txtUserName" onblur="checkIsRegistered(this, '이 사용자 이름은 이미 등록되었습니다. 다른 사용자 이름을 사용하십시오!', 1)" maxlength="15" isRequired="true" isValidate="true" errorSForEmpty="사용자 이름은 비워둘 수 없습니다!" errorSForValidate="일치 오류가 발생했습니다! 문자로 시작하며 3-16바이트, 영숫자 밑줄 및 허용되는 보안 기호를 허용합니다!" verifyPattern="/^[a-zA-Z][a-zA-Z0-9_$% ]{2 ,15}$/"><font color="#ff0000">*</font></td>
</tr>
<tr>
<td><div align="right">비밀번호:</div>
</td>
<td><input type="password" id="txtPassword" maxlength="15" isRequired="true" isValidate="true" errorSForEmpty="비밀번호는 비워둘 수 없습니다!" errorSForValidate="일치 오류! 3-16자 필요 섹션, 영숫자 밑줄 및 허용된 보안 기호 허용!!" verifyPattern="/^[a-zA-Z0-9_$%]{2,15}$/"><font color="#ff0000">*</font></td>
</tr>
<tr>
<td><div align="right">비밀번호 확인:</div>
</td>
<td><input type="password" id="txtConfirmPassword" isRequired="true" errorSForEmpty="비밀번호 확인은 비워둘 수 없습니다!"><font color="#ff0000">*</font></td>
</tr>
<tr>
<td><div align="right">비밀번호 질문:</div>
</td>
<td><input type="text" id="txtQuestion" maxlength="50" isRequired="true" isValidate="true" errorSForEmpty="비밀번호 프롬프트 질문이 입력되지 않았습니다! errorSForValidate="길이는 다음과 같아야 합니다." 8-50자 사이 단어 사이에 공백이 있어서는 안 됩니다!" verifyPattern="//S{8,50}/"><font color="#ff0000">*</font></td>
</tr>
<tr>
<td><div align="right">비밀번호 질문 답변:</div>
</td>
<td><input type="text" id="txtAnswer" maxlength="50" isRequired="true" isValidate="true" errorSForEmpty="비밀번호 질문에 대한 답변이 입력되지 않았습니다!" 8-50자 사이여야 합니다. 단어 사이에 공백이 있어서는 안 됩니다!" verifyPattern="//S{8,50}/"><font color="#ff0000">*</font></td>
</tr>
<tr>
<td><div align="right">사이트 URL:</div>
</td>
<td><input type="text" id="txtUrl" onblur="checkIsRegistered(this, '이 URL은 등록되었습니다. 다른 URL을 사용하세요!', 2)" maxlength="20" isRequired="true" isValidate ="true" errorSForEmpty="사이트 URL은 비워둘 수 없습니다!" errorSForValidate="사이트 URL 형식이 잘못되었습니다!" verifyPattern="/^[a-zA-Z0-9]{1,20}$/"><font color="#ff0000">*</font></td>
</tr>
<tr>
<td><div align="right">성별:</div>
</td>
<td><input type="radio" id="boy" name="sex" value="1" selected>남성<input type="radio" id="girl" name="sex" value="0" >여성</td>
</tr>
<tr>
<td><div align="right">이메일:</div>
</td>
<td><input type="text" id="txtEmail" isValidate="true" errorSForValidate="이메일 형식이 잘못되었습니다!" verifyPattern="/^.+/@(/[?)[a-zA-Z0- 9/-/.]+/.([a-zA-Z]{2,3}|[0-9]{1,3})(/]?)$/"></td>
</tr>
<tr>
<td><div align="right">유선전화:</div>
</td>
<td><input type="text" id="txtTel" isRequired="true" isValidate="true" errorSForEmpty="유선전화는 비워둘 수 없습니다!" errorSForValidate="유선전화 형식이 잘못되었습니다! 0592 형식을 사용하세요. -5555555 !" verifyPattern="/^(/d{3}-|/d{4}-)?(/d{8}|/d{7})$/"><font color="#ff0000">*</font></td>
</tr>
<tr>
<td><div align="right">휴대전화:</div>
</td>
<td><input type="text" id="txtMobile" isValidate="true" errorSForValidate="휴대폰 형식이 잘못되었습니다!" verifyPattern="/^1/d{10}$/"></td>
</tr>
<tr>
<td><div align="right">QQ:</div>
</td>
<td><input type="text" id="txtQQ" isValidate="true" errorSForValidate="QQ 형식이 잘못되었습니다!" verifyPattern="/^[1-9]*[1-9][0-9] *$/"></td>
</tr>
<tr>
<td><div align="right">주소:</div>
</td>
<td><input type="text" id="txtAddress"></td>
</tr>
<tr>
<td><div align="right">우편번호:</div>
</td>
<td><input type="text" id="txtPostalcode" maxlength="6" isValidate="true" errorSForValidate="우편번호가 올바르지 않습니다!" verifyPattern="/^/d{6}/"></ TD>
</tr>
<tr>
<td><div align="right">작업:</div>
</td>
<td><input type="button" value="등록" id="btnSubmit" onclick="btnSubmit_onclick()"><input type="reset" value="재설정"></td>
</tr>
</table>
</form>
</body>
</html>
위 코드에는 CommonFunction.js 파일이 포함되어 있습니다.
다음과 같이 코드 코드를 복사합니다.
/************************************************ * *********
*
* 공개 js 기능
*
************************************************** * *********/
함수 commonFunction()
{
// 값이 null이거나 비어 있는지 확인
this.checkIsEmpty = 함수(obj)
{
var 플래그 = true;
for(var i=0; i<obj.length; i++)
{
var e = obj.item(i);
if(e.is필수)
{
if(e.value=='')
{
경고(e.errorSForEmpty);
e.focus();
플래그 = 거짓;
부서지다;
}
}
if(e.isValidate)
{
if(this.checkValidate(e)==false)
{
경고(e.errorSForValidate);
e.select();
e.focus();
플래그 = 거짓;
부서지다;
}
}
}
반환 플래그;
}
// 값이 검증되었는지 확인
this.checkValidate = 함수(e)
{
var v = e.값;
if(v!='')
{
return this.checkReg(e.validatePattern, v);
}
}
// 정규식 유효성 검사
this.checkReg = 함수(패턴, 값)
{
패턴 = 패턴.하위 문자열(1, 패턴.길이-1);
var reg = new RegExp(패턴);
if(!reg.test(값))
{
거짓을 반환;
}
}
// 어떤 ID에 대한 Element By id 객체를 반환합니다.
this.$getElementById = 함수(ID)
{
var e = document.getElementById(id);
if(e!='정의되지 않음')
{
e를 반환;
}
반품;
}
// 어떤 ID에 대한 Element By name 객체를 반환합니다.
this.$getElementsByName = 함수(ID)
{
var e = document.getElementsByName(id);
if(e!='정의되지 않음')
{
e를 반환;
}
반품;
}
}
효과 사진 게시: