javaScript技巧(1):表單提交驗證類

1 表單項不能爲空 


<script language="javascript">

<!--

function CheckForm()

{

if (document.form.name.value.length == 0) {

alert("請輸入您姓名!");

document.form.name.focus();

return false;

}

return true;

}

-->

</script>


2 比較兩個表單項的值是否相同
<script language="javascript">

<!--

function CheckForm()

if (document.form.PWD.value != document.form.PWD_Again.value) {

alert("您兩次輸入的密碼不一樣!請重新輸入.");

document.ADDUser.PWD.focus();

return false;

}

return true;

}

-->

</script>


3 表單項只能爲數字和"_",用於電話/銀行帳號驗證上,可擴展到域名註冊等
<script language="javascript">

<!--

function isNumber(String)



var Letters = "1234567890-"; //可以自己增加可輸入值

var i;

var c;

if(String.charAt( 0 )=='-')

return false;

if( String.charAt( String.length - 1 ) == '-' )

return false;

for( i = 0; i < String.length; i ++ )

{

c = String.charAt( i );

if (Letters.indexOf( c ) < 0)

return false;

}

return true;

}

function CheckForm()

{

if(! isNumber(document.form.TEL.value)) {

alert("您的電話號碼不合法!");

document.form.TEL.focus();

return false;

}

return true;

}

-->

</script>


4 表單項輸入數值/長度限定
<script language="javascript">

<!--

function CheckForm() 

{

if (document.form.count.value > 100 || document.form.count.value < 1)

{

alert("輸入數值不能小於零大於100!");

document.form.count.focus();

return false;

}

if (document.form.MESSAGE.value.length<10)

{

alert("輸入文字小於10!");

document.form.MESSAGE.focus();

return false;

}

return true;

}

//-->

</script>


5 中文/英文/數字/郵件地址合法性判斷
<SCRIPT LANGUAGE="javascript">

<!--

function isEnglish(name) //英文值檢測

{

if(name.length == 0)

return false;

for(i = 0; i < name.length; i++) {

if(name.charCodeAt(i) > 128)

return false;

}

return true;

}

function isChinese(name) //中文值檢測

{

if(name.length == 0)

return false;

for(i = 0; i < name.length; i++) {

if(name.charCodeAt(i) > 128)

return true;

}

return false;

}

function isMail(name) // E-mail值檢測

{

if(! isEnglish(name))

return false;

i = name.indexOf("@");

j = name.lastIndexOf("@");

if(i == -1)

return false;

if(i != j)

return false;

if(i == name.length)

return false;

return true;

}

function isNumber(name) //數值檢測

{

if(name.length == 0)

return false;

for(i = 0; i < name.length; i++) {

if(name.charAt(i) < "0" || name.charAt(i) > "9")

return false;

}

return true;

}

function CheckForm()

{

if(! isMail(form.Email.value)) {

alert("您的電子郵件不合法!");

form.Email.focus();

return false;

}

if(! isEnglish(form.name.value)) {

alert("英文名不合法!");

form.name.focus();

return false;

}

if(! isChinese(form.cnname.value)) {

alert("中文名不合法!");

form.cnname.focus();

return false;

}

if(! isNumber(form.PublicZipCode.value)) {

alert("郵政編碼不合法!");

form.PublicZipCode.focus();

return false;

}

return true;

}

//-->

</SCRIPT>


6 限定表單項不能輸入的字符
<script language="javascript">

<!--

function contain(str,charset)// 字符串包含測試函數

{

var i;

for(i=0;i<charset.length;i++)

if(str.indexOf(charset.charAt(i))>=0)

return true;

return false;

}

function CheckForm()

{

if ((contain(document.form.NAME.value, "%/(/)><")) || (contain(document.form.MESSAGE.value, 
"%/(/)><")))

{

alert("輸入了非法字符");

document.form.NAME.focus();

return false;

}

return true;

}

//-->

</script>
發佈了159 篇原創文章 · 獲贊 3 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章