透過Javascript的Regular Expression進行表單驗證

下列以中文姓名、行動電話、電子信箱驗證為例

程式碼如下:

<script language="JavaScript">
function Check_Item(form) {
returnvalue = true;
errormsg="";

if (form.name.value == "") { errormsg+="請填寫【姓名】\n"; returnvalue = false; }
if (returnvalue == false) { alert(errormsg); form.name.focus(); return true;}

var name = form.name.value;
var nameRegxp = /^[\u4e00-\u9fa5]+$/i;
if (nameRegxp.test(name) != true){ errormsg+="請填寫中文姓名\n"; returnvalue = false; }
if (returnvalue == false) { alert(errormsg); form.name.focus(); return true;}

if (form.number.value == "") { errormsg+="請填寫【行動電話】\n"; returnvalue = false; }
if (returnvalue == false) { alert(errormsg); form.number.focus(); return true;}

var number = form.number.value;
var numberRegxp = /^09[0-9]{2}-[0-9]{6}$/; //格式需為09XX-XXXXXX
if (numberRegxp.test(number) != true){ errormsg+="行動電話格式錯誤\n"; returnvalue = false; }
if (returnvalue == false) { alert(errormsg); form.number.focus(); return true;}

if (form.email.value == "") { errormsg+="請輸入電子信箱\n"; returnvalue = false; }
if (returnvalue == false) { alert(errormsg); form.email.focus(); return true;}

var email = form.email.value;
var emailRegxp = /^([\w]+)(.[\w]+)*@([\w]+)(.[\w]{2,3}){1,2}$/;
if (emailRegxp.test(email) != true){ errormsg+="電子信箱格式錯誤\n"; returnvalue = false; }
if (returnvalue == false) { alert(errormsg); form.email.focus(); return true;}

if (returnvalue == true) form.sumbit();

}
</script>

 

<form name="form1" method="post" action="send.php" onSubmit="return returnvalue">
 <input type="text" name="name" />
 <input type="text" name="number" />
 <input type="text" name="mail" />
 <input type="sumbit" onclick="Check_Item(this.form);"/>

</form>

arrow
arrow

    Randy 發表在 痞客邦 留言(0) 人氣()