<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

        使用JavaScript進(jìn)行表單校驗(yàn)功能

        來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 22:33:34
        文檔

        使用JavaScript進(jìn)行表單校驗(yàn)功能

        使用JavaScript進(jìn)行表單校驗(yàn)功能:文本框校驗(yàn) 以下是文本框的校驗(yàn)步驟。 1.獲取待校驗(yàn)的文本框value值, 2.對value值設(shè)置判定條件,使用if語句或switch語句實(shí)現(xiàn)。 3. 若滿足條件,則校驗(yàn)通過,返回值為true。 4. 若不滿足條件則返回值為false,替換文本輸出校驗(yàn)的提示信息。 5. 表單獲取多
        推薦度:
        導(dǎo)讀使用JavaScript進(jìn)行表單校驗(yàn)功能:文本框校驗(yàn) 以下是文本框的校驗(yàn)步驟。 1.獲取待校驗(yàn)的文本框value值, 2.對value值設(shè)置判定條件,使用if語句或switch語句實(shí)現(xiàn)。 3. 若滿足條件,則校驗(yàn)通過,返回值為true。 4. 若不滿足條件則返回值為false,替換文本輸出校驗(yàn)的提示信息。 5. 表單獲取多

        文本框校驗(yàn)

        以下是文本框的校驗(yàn)步驟。

        1.獲取待校驗(yàn)的文本框value值,

        2.對value值設(shè)置判定條件,使用if語句或switch語句實(shí)現(xiàn)。

        3. 若滿足條件,則校驗(yàn)通過,返回值為true。

        4. 若不滿足條件則返回值為false,替換文本輸出校驗(yàn)的提示信息。

        5. 表單獲取多個驗(yàn)證的返回值,做邏輯運(yùn)算,將參數(shù)傳遞給表單form的onsubmit事件。

        6. 在input中調(diào)用校驗(yàn)函數(shù),我使用的是onblur事件觸發(fā)校驗(yàn)函數(shù)。

        下拉框校驗(yàn)

        下拉框的校驗(yàn)相比文本框略有不同,下拉框中option的返回值為value,由select中的name值獲取到用戶的選擇,因此在下拉框的校驗(yàn)函數(shù)中通過id獲取到select中的value,在根據(jù)value值是否為空或?yàn)槠溆嗟姆欠ㄖ刀M(jìn)行不同的判斷,其余的步驟也與文本框相同。

        表單校驗(yàn)樣式如下:

        這里是表單的初始樣式 
        確認(rèn)密碼校驗(yàn) 
        用戶名和分組校驗(yàn)

        遇到的問題

      1. 校驗(yàn)表單時出現(xiàn)問題但表單仍然能夠提交?
      2. 原因:onsubmit事件作為一個提交動作有一個默認(rèn)的參數(shù),這個參數(shù)的默認(rèn)值為true,前面提到如果滿足條件要求就返回true否則返回false,每一項的校驗(yàn)中都要設(shè)置一個布爾類型的返回值,如果所有的校驗(yàn)全部通過才能正常提交表單,只要有一項不滿足條件也不能提交表單而需要重新輸入,因此需要對每一項校驗(yàn)函數(shù)的返回值做一個邏輯運(yùn)算,全為真則最終返回給onsubmit的值為true,否則為false,而onsubmit的參數(shù)為false則無法提交,故實(shí)現(xiàn)了表單校驗(yàn)失敗時阻止提交。
      3. 一開始輸入錯誤的內(nèi)容,在修改變成正確的內(nèi)容之后提示仍然為之前的提示?
      4. 原因:在返回值為true時,將輸出提示信息的文本內(nèi)容置為空,即document.getElementById(“什么什么”).innerHTML=”“;
      5. onchange和onblur事件都可以用來觸發(fā)校驗(yàn),并且兩者都會在失去焦點(diǎn)之后實(shí)現(xiàn)校驗(yàn),但onblur觸發(fā)校驗(yàn)時有可能會由于用戶間斷輸入而提示輸入內(nèi)容不符合要求。
      6. 表單校驗(yàn)的js代碼段不能等頁面都加載完成之后加載。
      7. 代碼塊

        以下為程序源碼:

        <script>
        function validateUsername(){ 
        var input = document.myform.userName.value; 
        if(input == “”||input == null) { 
        document.myform.userName.focus(); 
        document.getElementById(“uname”).innerHTML=”用戶名不能為空!”; 
        return false; 
        } 
        else if(input.length>5 || input.length<2){ 
        document.getElementById(“uname”).innerHTML= “用戶名在2~5位”; 
        document.myform.userName.focus(); 
        return false; 
        } 
        else{ 
        document.getElementById(“uname”).innerHTML=”“; 
        return true; 
        } 
        } 
        function validatePassword(){ 
        var password = document.myform.password.value;
        if(password == “”||password == null) { 
        document.getElementById(“upss”).innerHTML = “密碼不能為空!”; 
        document.myform.password.focus(); 
        return false;
        } 
        else if(password.length>12 || password.length<6){ 
        document.getElementById(“upss”).innerHTML= “密碼在6~12位”; 
        document.myform.password.focus(); 
        return false; 
        } 
        else{ 
        document.getElementById(“upss”).innerHTML= “”; 
        return true; 
        } 
        } 
        function validatePasswordAgain(){ 
        var psw = document.myform.psw.value; 
        var password = document.myform.password.value; 
        if(psw!=password){ 
        document.getElementById(“upssa”).innerHTML=”兩次密碼輸入不同”; 
        return false; 
        }else{ 
        document.getElementById(“upssa”).innerHTML = “”; 
        return true; 
        } 
        } 
        function validateGroup(){ 
        var select = document.getElementById(“select”); 
        if(select.value == “NONE”){ 
        document.getElementById(“groupID”).innerHTML=”請選擇分組!”;
        return false; 
        }else { 
        document.getElementById(“groupID”).innerHTML=”“;
        return true; 
        } 
        } 
        function validateForm(){ 
        var flag = validateUsername()&&validatePassword()&&validatePasswordAgain()&&validateGroup(); 
        if(flag){ 
        return true; 
        }else return false; 
        }

        ```html

        <div class="warp"> 
        <h1>新用戶注冊</h1>
        <form action="/myproject/admin/addUser" name="myform" onsubmit="return validateForm()">
        <div class="form-warp"> 
         <ul>
         <li>用戶名稱:<input class="input" type="text" name="userName" placeholder="請輸入..." onblur="validateUsername()"/></li>
         <li>密 碼:<input class="input" type="password" name="password" id="password" placeholder="請輸入..." onblur="validatePassword()"/></li>
         <li>確認(rèn)密碼:<input class="input" type="password" name="psw" id="psw" placeholder="請輸入..." onblur="validatePasswordAgain()"/></li>
         <li>真實(shí)姓名:<input class="input" type="text" name="realName" placeholder="請輸入..."/></li>
         <li>分 組:<select name="group.id" id="select" onblur="validateGroup()">
         <option value="NONE">請選擇...</option>
         <#list groups as group>
         <option value="${group.id}">${group.name}</option>
         </#list>
         </select>
         </li>
         <li><input type="submit" value="提交" id="button"/></li>
         </ul>
        <ul class="validate">
         <li id="uname"></li>
         <li id="upss"></li>
         <li id="upssa"></li>
         <li id="groupID"></li>
        </ul>
        </div>
        </form>
        </div>
        “`

        總結(jié)

        以上所述是小編給大家介紹的使用JavaScript進(jìn)行表單校驗(yàn)功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        使用JavaScript進(jìn)行表單校驗(yàn)功能

        使用JavaScript進(jìn)行表單校驗(yàn)功能:文本框校驗(yàn) 以下是文本框的校驗(yàn)步驟。 1.獲取待校驗(yàn)的文本框value值, 2.對value值設(shè)置判定條件,使用if語句或switch語句實(shí)現(xiàn)。 3. 若滿足條件,則校驗(yàn)通過,返回值為true。 4. 若不滿足條件則返回值為false,替換文本輸出校驗(yàn)的提示信息。 5. 表單獲取多
        推薦度:
        標(biāo)簽: 使用 js 校驗(yàn)
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产成人无码精品久久久免费| 亚洲高清无码专区视频| 亚洲人成电影亚洲人成9999网| 一级片在线免费看| 国产精品va无码免费麻豆| 91在线亚洲综合在线| 91精品国产免费久久久久久青草| 亚洲视频在线观看| 日韩精品内射视频免费观看| 国产亚洲精久久久久久无码| 91在线视频免费观看| 亚洲色偷偷综合亚洲AVYP| 最近更新免费中文字幕大全| 亚洲精品你懂的在线观看| a毛片在线免费观看| 亚洲AV无码国产在丝袜线观看| 免费人成在线观看网站| 中文字幕中韩乱码亚洲大片| 久久亚洲精品11p| 色综合久久精品亚洲国产| 国产精品另类激情久久久免费 | 亚洲视频在线一区二区三区| 成人毛片100免费观看| 免费精品一区二区三区第35| 日韩特黄特色大片免费视频| 亚洲精品视频观看| 亚洲日本在线免费观看| 男的把j放进女人下面视频免费| 一级人做人a爰免费视频| 免费无码A片一区二三区| 成年私人影院免费视频网站| 亚洲国产成人精品无码区在线网站| 亚洲91精品麻豆国产系列在线| 国产亚洲精品精品精品| 男人的好免费观看在线视频| 久久亚洲精品无码aⅴ大香| a国产成人免费视频| 中国xxxxx高清免费看视频| 亚洲成a人片在线观看无码专区| 国产精品小视频免费无限app| 亚洲成av人片在线观看天堂无码 |