js表單驗證實例講解
本文實例為大家分享了js表單驗證,供大家參考,具體內(nèi)容如下
JavaScript 可用來在數(shù)據(jù)被送往服務(wù)器前對HTML 表單中的這些輸入數(shù)據(jù)進行驗證。
被JavaScript 驗證的這些典型的表單數(shù)據(jù)有:
1)、用戶是否已填寫表單中的必填項目?
2)、用戶輸入的郵件地址是否合法?
3)、用戶是否已輸入合法的日期?
4)、用戶是否在數(shù)據(jù)域 (numeric field) 中輸入了文本?
gspan.html
<html> <head> <title>表單驗證實例</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="check.js" type="text/javascript"></script> <style> span{ font-size:12px; } .stats1{ color : #ccc; } .stats2{ color :black; } .stats3{ color :red; } .stats4{ color :green; } </style> </head> <body> <form method="post" action="reg.php" onsubmit="return regs('click')" > 用戶名:<input type="text" name="username" /><span class="stats1">用戶名不能為空</span><br/> 郵箱:<input type="text" name="email" /><span class="stats1">郵箱不能為空</span><br/> 密碼:<input type="password" name="password" /><span class="stats1">密碼不能為空</span><br/> 確認(rèn)密碼:<input type="password" name="chkpass" /><span class="stats1">密碼不能為空</span><br/> <input type="submit" /> </form> </body> </html>
check.js
function gspan(cobj){ //獲取表單后的span 標(biāo)簽 顯示提示信息 if (cobj.nextSibling.nodeName != 'SPAN'){ gspan(cobj.nextSibling); } else { return cobj.nextSibling; } } //檢查表單 obj【表單對象】, info【提示信息】 fun【處理函數(shù)】 click 【是否需要單擊, 提交時候需要觸發(fā)】 function check(obj, info, fun, click){ var sp = gspan(obj); obj.onfocus = function(){ sp.innerHTML = info; sp.className = 'stats2'; } obj.onblur = function(){ if (fun(this.value)){ sp.innerHTML = "輸入正確!"; sp.className = "stats4"; } else { sp.innerHTML = info; sp.className = "stats3"; } } if (click == 'click'){ obj.onblur(); } } onload = regs; //頁面載入完執(zhí)行 function regs(click){ var stat = true; //返回狀態(tài), 提交數(shù)據(jù)時用到 username = document.getElementsByName('username')[0]; password = document.getElementsByName('password')[0]; chkpass = document.getElementsByName('chkpass')[0]; email = document.getElementsByName('email')[0]; check(username, "用戶名的長度在3-20之間", function(val){ if (val.match(/^\S+$/) && val.length >=3 && val.length <=20){ return true; } else { stat = false; return false; } }, click); check(password, "密碼必須在6-20位之間", function(val){ if (val.match(/^\S+$/) && val.length >= 6 && val.length <=20){ return true; } else { stat = false; return false; } }, click); check(chkpass, "確定密碼要和上面一致,規(guī)則也要相同", function(val){ if (val.match(/^\S+$/) && val.length >=6 && val.length <=20 && val == password.value){ return true; } else { stat = false; return false; } }, click); check(email, "請按郵箱規(guī)則輸入", function(val){ if (val.match(/\w+@\w+\.\w/)){ return true; } else { stat = false; return false; } }, click); return stat; }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。
相關(guān)文章
JavaScript新功能介紹之findLast()和findLastIndex()
最近工作中遇到了一個關(guān)于查找數(shù)組里面的目標(biāo)元素的方法,所以下面這篇文章主要給大家介紹了關(guān)于JavaScript新功能之findLast()?和findLastIndex()的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04詳細(xì)講解js實現(xiàn)電梯導(dǎo)航的實例
對于某一個頁面內(nèi)容繁多,如果我們滾動的時間較長,為了增加用戶體驗,我們需要實現(xiàn)點擊某一個按鈕,然后滾動到對應(yīng)的區(qū)域,滾動的時候,右側(cè)對應(yīng)的分類實現(xiàn)高亮,所以本文給大家詳細(xì)介紹講解了js實現(xiàn)電梯導(dǎo)航,需要的朋友可以參考下2023-10-10Immutable 在 JavaScript 中的應(yīng)用
在 JavaScript 中,對象是引用類型的數(shù)據(jù),其優(yōu)點在于頻繁的修改對象時都是在原對象的基礎(chǔ)上修改,并不需要重新創(chuàng)建,這樣可以有效的利用內(nèi)存,不會造成內(nèi)存空間的浪費,對象的這種特性可以稱之為 Mutable,中文的字面意思是「可變」2016-05-05