今天就跟大家聊聊有關如何在JavaScript中使用表單元素驗證表單,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

秦安ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為成都創新互聯的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
1最簡單的表單驗證-禁止空白的必填項目
1.1最簡單的HTML結構
網站最基礎的就是注冊,它是一個系統的交互基礎.
例子:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>簡單列表的html結構</title> </head> <body> <form method="post" action=""> 賬戶:<input type="text" name=""/><br/><br/> 密碼:<input type="password" name=""/><br/><br/> 確認:<input type="password" name=""/><br/><br/> <input type="submit" value="注冊" /> </form> </body> </html>
1.2綁定驗證功能
因為用戶最后要去點擊"注冊"按鈕,所以我們就在"注冊"按鈕上添加一個onclick事件屬性,引用eg.regCheck()
例子:
注冊事件
<!DOCTYPE html>
<html>
<!--綁定驗證功能,注冊事件-->
<head>
<meta charset="utf-8">
<title>簡單列表的html結構</title>
</head>
<body>
<form method="post" action="">
賬戶:<input type="text" name=""/><br/><br/>
密碼:<input type="password" name=""/><br/><br/>
確認:<input type="password" name=""/><br/><br/>
<input type="submit"
value="注冊"
onclick="return eg.regCheck();"/>
</form>
<script >
//聲明一個對象,當做命名空間來使用
var eg = {};
eg.regCheck = function(){
}
</script>
</body>
</html>eg.regCheck()函數需要添加的行為,獲取用戶輸入的賬戶信息,給input標簽加上一個id屬性,JavaScript再通過這個指定的id去取得相應的信息,然后返回驗證結果true或false
例子:
給表單添加驗證功能
<!DOCTYPE html>
<html>
<!--給表單添加驗證功能-->
<head>
<meta charset="utf-8">
<title>簡單列表的html結構</title>
</head>
<body>
<form method="post" action="">
賬戶:<input type="text" name="" id="userid"/><br/><br/>
密碼:<input type="password" name="" id="userpwd"/><br/><br/>
確認:<input type="password" name="" id="userpwd2"/><br/><br/>
<input type="submit"
value="注冊"
onclick="return eg.regCheck();"/>
</form>
<script >
//聲明一個對象,當做命名空間來使用
//定義一個公共函數來獲取指定id元素,減少代碼量,提高代碼復用率
var eg = {};
eg.$ = function(id){
return document.getElementById(id);
};
eg.regCheck = function(){
var uid = eg.$("userid");
var upwd = eg.$("userpwd");
var upwd2 = eg.$("userpwd2");
if(uid.value == ''){
alert('賬戶不能為空!');
//返回false就會阻止表單form提交
return false;
}
if(upwd.value == ''){
alert('密碼不能為空!');
//返回false就會阻止表單form提交
return false;
}
if(upwd.value != upwd2.value){
alert('兩次輸入密碼不相同!');
//返回false就會阻止表單form提交
return false;
}
return true;
};
</script>
</body>
</html>1.3綁定驗證的另一種方式
把驗證放在"注冊"按鈕的onclick事件屬性里使用,還有另一種調用方式,即form標簽的onsubmit事件屬性
例子:
form表單綁定驗證完整范例
<!DOCTYPE html>
<html>
<!--
綁定驗證的另一種方式,form表單綁定驗證完整示例
-->
<head>
<meta charset="utf-8">
<title>簡單列表的html結構</title>
</head>
<body>
<form method="post" action="" onsubmit="return eg.regCheck();">
賬戶:<input type="text" name="" id="userid"/><br/><br/>
密碼:<input type="password" name="" id="userpwd"/><br/><br/>
確認:<input type="password" name="" id="userpwd2"/><br/><br/>
<input type="submit"
value="注冊"
/>
</form>
<script>
//聲明一個對象,當做命名空間來使用
//定義一個公共函數來獲取指定id元素,減少代碼量,提高代碼復用率
var eg = {};
eg.$ = function(id){
return document.getElementById(id);
};
eg.regCheck = function () {
var uid = eg.$("userid");
var upwd = eg.$("userpwd");
var upwd2 = eg.$("userpwd2");
if(uid.value == ''){
alert('賬戶不能為空!');
//返回false就會阻止表單form提交
return false;
}
if(upwd.value == ''){
alert('密碼不能為空!');
//返回false就會阻止表單form提交
return false;
}
if(upwd.value != upwd2.value){
alert('兩次輸入密碼不相同!');
//返回false就會阻止表單form提交
return false;
}
return true;
};
</script>
</body>
</html>2,處理各種類型的表單元素
2.1,input,textarea,hidden和button
要求:在注冊表單的基礎上加"簡介"字段,可以為空,但是最長不超過60個字符,同時要統計一下,用戶輸入錯誤的次數,輸入超過3次,就鎖定"注冊"按鈕,然后要"解鎖"才能重新使用
例子:
處理各種類型表單一
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>處理各種類型表單一</title>
</head>
<body>
<form method="post" action="" onsubmit="return eg.regCheck();">
賬戶:<input type="text" name="" id="userid"/><br/><br/>
密碼:<input type="password" name="" id="userpwd"/><br/><br/>
確認:<input type="password" name="" id="userpwd2"/><br/><br/>
簡介:
<textarea name="" rows="4" cols="18" id="about">
</textarea><br/><br/>
<input type="submit"
value="注冊" id="regBtn"
/>
<input type="button" value="解鎖" onclick="eg.unlock"
id="regUnlock">
</form>
<script>
//聲明一個對象,當做命名空間來使用
//定義一個公共函數來獲取指定id元素,減少代碼量,提高代碼復用率
var eg = {};
eg.$ = function(id){
return document.getElementById(id);
};
//主要的驗證方法
eg.regCheck = function () {
var uid = eg.$("userid");
var upwd = eg.$("userpwd");
var upwd2 = eg.$("userpwd2");
//value是元素自帶屬性
if(uid.value == ''){
alert('賬戶不能為空!');
eg.err();
return false;
}
if(upwd.value == ''){
alert('密碼不能為空!');
eg.err();
return false;
}
if(upwd.value != upwd2.value){
alert('兩次輸入密碼不相同!');
eg.err();
return false;
}
//新增部分
var about = eg.$("about");
//value是字符串類型的屬性
if (about.value.length>60){
alert("簡介太長!");
eg.err();
return false;
}
//返回true就會提交表單
return true;
};
//出錯時記錄錯誤次數
eg.err = function () {
var el = eg.$("errnum");
var old = el.value;
//把字符串轉換為整數+1,并保存起來
el.value = parseInt(old)+1;
//用來檢查是否應該鎖定
eg.lock();
};
//通過次數判斷是否要鎖定
eg.lock = function(){
var err = eg.$("errnum");
if (parseInt(err.value)>2){
eg.$("regBtn").disabled = true;
//根據業務需求,輸錯3次就鎖定
eg.$("regUnlock").style.display="block";
//同時顯示解鎖按鈕
}
};
eg.unlock = function(){
eg.$("regBtn").disabled = false;
//根據業務需求,解鎖就是讓用戶可以重新注冊
eg.$("regUnlock").style.display="none";
//元素所有樣式都掛載到style屬性下
}
</script>
</body>
</html>現在制作一個錯誤統計,可以為后臺系統保存起來用于分析用戶的錯誤率,甚至可以分析出用戶一般會在哪些字段上出錯。記錄錯誤信息不需要給用戶看到,可以選擇input的type屬性是hidden的元素來存儲
2.2checkbox,radio和select
知道用戶性別,年齡,興趣愛好
例子:
處理各種類型表單二
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>處理各種類型表單二</title>
</head>
<body>
<form method="post" action="" onsubmit="return eg.regCheck();">
賬戶:<input type="text" name="" id="userid"/><br/><br/>
密碼:<input type="password" name="" id="userpwd"/><br/><br/>
確認:<input type="password" name="" id="userpwd2"/><br/><br/>
簡介:
<textarea name="" rows="4" cols="18" id="about">
</textarea><br/><br/>
<input type="submit"
value="注冊" id="regBtn"
/>
<input type="button" value="解鎖" onclick="eg.unlock"
id="regUnlock">
</form>
<script>
//聲明一個對象,當做命名空間來使用
//定義一個公共函數來獲取指定id元素,減少代碼量,提高代碼復用率
var eg = {};
eg.$ = function(id){
return document.getElementById(id);
};
//主要的驗證方法
eg.regCheck = function () {
var uid = eg.$("userid");
var upwd = eg.$("userpwd");
var upwd2 = eg.$("userpwd2");
//value是元素自帶屬性
if(uid.value == ''){
alert('賬戶不能為空!');
eg.err();
return false;
}
if(upwd.value == ''){
alert('密碼不能為空!');
eg.err();
return false;
}
if(upwd.value != upwd2.value){
alert('兩次輸入密碼不相同!');
eg.err();
return false;
}
//新增部分
var about = eg.$("about");
//value是字符串類型的屬性
if (about.value.length>60){
alert("簡介太長!");
eg.err();
return false;
}
//返回true就會提交表單
return true;
};
//出錯時記錄錯誤次數
eg.err = function () {
var el = eg.$("errnum");
var old = el.value;
//把字符串轉換為整數+1,并保存起來
el.value = parseInt(old)+1;
//用來檢查是否應該鎖定
eg.lock();
};
//通過次數判斷是否要鎖定
eg.lock = function(){
var err = eg.$("errnum");
if (parseInt(err.value)>2){
eg.$("regBtn").disabled = true;
//根據業務需求,輸錯3次就鎖定
eg.$("regUnlock").style.display="block";
//同時顯示解鎖按鈕
}
};
eg.unlock = function(){
eg.$("regBtn").disabled = false;
//根據業務需求,解鎖就是讓用戶可以重新注冊
eg.$("regUnlock").style.display="none";
//元素所有樣式都掛載到style屬性下
}
</script>
</body>
</html>看完上述內容,你們對如何在JavaScript中使用表單元素驗證表單有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注創新互聯行業資訊頻道,感謝大家的支持。
分享標題:如何在JavaScript中使用表單元素驗證表單
URL網址:http://www.yijiale78.com/article40/gipjho.html
成都網站建設公司_創新互聯,為您提供移動網站建設、動態網站、企業建站、面包屑導航、虛擬主機、全網營銷推廣
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯