溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

js怎么實(shí)現(xiàn)表單校驗(yàn)功能

發(fā)布時(shí)間:2021-08-19 11:16:33 來(lái)源:億速云 閱讀:138 作者:chen 欄目:開發(fā)技術(shù)

這篇文章主要講解了“js怎么實(shí)現(xiàn)表單校驗(yàn)功能”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“js怎么實(shí)現(xiàn)表單校驗(yàn)功能”吧!

本文實(shí)例為大家分享了js實(shí)現(xiàn)表單校驗(yàn)功能的具體代碼,供大家參考,具體內(nèi)容如下

1、所用到的三個(gè)事件:

onfocus(焦點(diǎn)聚焦事件)、onblur(焦點(diǎn)離開事件)、onkeyup(按鍵抬起的事件)

2、利用事件觸發(fā)函數(shù),函數(shù)中執(zhí)行校驗(yàn)的信息。

3、利用checkform判斷表單中的內(nèi)容是否規(guī)范,如果規(guī)范submit按鈕可以提交表單信息。

簡(jiǎn)單效果:

js怎么實(shí)現(xiàn)表單校驗(yàn)功能

js怎么實(shí)現(xiàn)表單校驗(yàn)功能 

js怎么實(shí)現(xiàn)表單校驗(yàn)功能 

js怎么實(shí)現(xiàn)表單校驗(yàn)功能 

form中的代碼:

<form action="demo.html" onsubmit="return checkForm()">
      <div>
      <div class="text">
           <p>用戶名</p>
           <input id="value" onfocus="shoeTips('hint','用戶名長(zhǎng)度不能小于六')" onblur="hint_hide()" onkeyup="hint()" type="text" Name="Userame" placeholder="用戶名" />
           <span id="hint"></span>
          </div>
         <div class="text">
           <p>密碼</p>
           <input id="pass_value" onfocus="shoeTips('pass_hint','密碼長(zhǎng)度不能小于六')" onblur="pass_hide()" onkeyup="checkPass()" type="password" name="password" placeholder="密碼" />
            <span id="pass_hint"></span>
            </div>
            <div class="text">
              <p>確認(rèn)密碼</p>
              <input id="passpass_value" onfocus="shoeTips('passpass_hint','兩次密碼要一致')" onblur="passpass_hide()" onkeyup="checkPassPass()" type="password" name="password" placeholder="確認(rèn)密碼" />
              <span id="passpass_hint"></span>
           </div>
           <div class="text">
                    <p>郵箱</p>
                    <input id="email" onfocus="shoeTips('email_hint','郵箱格式要正確')" onblur="emailHide()" onkeyup="emailCheck()" type="email" name="email" placeholder="郵箱" />
                    <span id="email_hint"></span>
                </div>
                <div class="text">
                    <p>手機(jī)號(hào)</p>
                    <input id="phone" type="text" onfocus="shoeTips('phone_hint','格式為十一位數(shù)字的手機(jī)號(hào)')" onblur="phoneHide()" onkeyup="phoneCheck()" Name="Phone" placeholder="手機(jī)號(hào)">
                    <span id="phone_hint"></span>
                </div>
                <div class="submit">
             <input type="submit" value="提交" />
         </div>
    </div>
</form>

js中的:

function shoeTips(spanId, tips) {
 var span = document.getElementById(spanId);
 span.innerHTML = tips;
}
/**
 * 校驗(yàn)用戶名
 */
function hint() {
 var value = document.getElementById("value").value;
 var hint = document.getElementById("hint");
 if(value.length < 6) {
  hint.innerHTML = "用戶名太短";
  return false;
 } else {
  hint.innerHTML = "用戶名合格";
  return true;
 }
}
 
function hint_hide() {
 var hint = document.getElementById("hint");
 hint.innerHTML = "";
}
/**
 * 校驗(yàn)密碼
 */
 
function checkPass() {
 var value = document.getElementById("pass_value").value;
 var hint = document.getElementById("pass_hint");
 if(value.length < 6) {
  hint.innerHTML = "密碼太短";
  return false;
 } else {
  hint.innerHTML = "密碼格式合格";
  return true;
 }
}
 
function pass_hide() {
 var hint = document.getElementById("pass_hint");
 hint.innerHTML = "";
}
/***
 * 確認(rèn)密碼的校驗(yàn)
 */
function checkPassPass() {
 var papavalue = document.getElementById("passpass_value").value;
 var value = document.getElementById("pass_value").value;
 var papahint = document.getElementById("passpass_hint");
 if(papavalue != value) {
  papahint.innerHTML = "兩次密碼不一致";
  return false;
 } else {
  papahint.innerHTML = "";
  return true;
 }
}
 
function passpass_hide() {
 var papahint = document.getElementById("passpass_hint");
 papahint.innerHTML = "";
}
/**
 * 校驗(yàn)郵箱
 */
function checkEmail(strEmail) 
{      
    var emailReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
    if ( emailReg.test(strEmail) ) {
        return true;
    }
    else {
//      alert("您輸入的Email地址格式不正確!");
        return false;
    }
};
function emailCheck() {
 var emailValue = document.getElementById("email").value;
 var email_hint = document.getElementById("email_hint");
 var flag = checkEmail(emailValue);
 if(flag) {
  email_hint.innerHTML = "郵箱格式正確";
  return true;
 } else {
  email_hint.innerHTML = "郵箱格式錯(cuò)誤";
  return false;
 }
}
 
function emailHide() {
 var email_hint = document.getElementById("email_hint");
 email_hint.innerHTML = "";
}
/**
 * 校驗(yàn)手機(jī)號(hào)
 */
function checkMobile( strMobile )
{ //13588888888
    var regu = /^[1][345678][0-9]{9}$/;
    var re = new RegExp(regu);
    if (re.test(strMobile)) {
        return true;
    }
    else {
        return false;
    }
};
function phoneCheck() {
 var phone = document.getElementById("phone").value;
 var phone_hint = document.getElementById("phone_hint");
 var flag = checkMobile(phone);
 if(flag) {
  phone_hint.innerHTML = "手機(jī)號(hào)格式正確";
  return true;
 } else {
  phone_hint.innerHTML = "手機(jī)號(hào)格式錯(cuò)誤";
  return false;
 }
}
 
function phoneHide() {
 var phone_hint = document.getElementById("phone_hint");
 phone_hint.innerHTML = "";
}
 
function checkForm() {
 var flag = emailCheck() && checkPass() && checkPassPass() && hint() && phoneCheck();
 return flag;
}

感謝各位的閱讀,以上就是“js怎么實(shí)現(xiàn)表單校驗(yàn)功能”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)js怎么實(shí)現(xiàn)表單校驗(yàn)功能這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

js
AI