用正則表達式實現表單驗證提交 - 新聞資訊 - 雲南小程序開發|雲南軟件開發|雲南網站建設-昆明融晨信息技術有限公司

159-8711-8523

雲南網建設/小程序開發/軟件開發

知識

不(bù)管是(shì)網站,軟件還是(shì)小程序,都要(yào / yāo)直接或間接能爲(wéi / wèi)您産生價值,我們在(zài)追求其視覺表現的(de)同時(shí),更側重于(yú)功能的(de)便捷,營銷的(de)便利,運營的(de)高效,讓網站成爲(wéi / wèi)營銷工具,讓軟件能切實提升企業内部管理水平和(hé / huò)效率。優秀的(de)程序爲(wéi / wèi)後期升級提供便捷的(de)支持!

您當前位置>首頁 » 新聞資訊 » 技術分享 >

用正則表達式實現表單驗證提交

發表時(shí)間:2020-10-17

發布人(rén):融晨科技

浏覽次數:60

用正則表達式實現表單驗證提交

前端基礎,正好做個(gè)練手,記錄一下
用到(dào)了(le/liǎo)HTML5的(de)标簽和(hé / huò)JS的(de)基本邏輯還有正則表達式
這(zhè)麽屑的(de)代碼還有人(rén)看?(滑稽)

<!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>Title</title>
        </head>
    <body>
    <script>
        window.onload=function(){
            //用戶名驗證模塊
            document.getElementById("username").onblur=function(){//用戶名表單驗證,失焦時(shí)觸發
                //用戶名不(bù)能爲(wéi / wèi)空
                var username=document.getElementById("username")//拿到(dào)用戶名文檔對象
                var usernameError=document.getElementById("usernameError")//拿到(dào)文檔報錯對象
                if(username.value==""){
                    usernameError.innerHTML="<font color='red' size='2'>注冊名不(bù)能爲(wéi / wèi)空!</font>"
                }
                //用戶名必須在(zài)6-14位之(zhī)間
                //用戶登錄正則表達格式
                var regExpUesrname=/^[a-zA-Z]\w{5,13}$/
                    //regExpOK正則true/false接收用
                var regExpOK=regExpUesrname.test(username.value)
                if(!regExpOK){
                    if(username.value.length<6){
                        usernameError.innerHTML="<font color='red' size='2'>注冊名不(bù)能小于(yú)6位!</font>"
                    }
                    if(username.value.length>14){
                        usernameError.innerHTML="<font color='red' size='2'>注冊名不(bù)能大(dà)于(yú)14位!</font>"
                    }
                    document.getElementById("username").onfocus=function(){
                        username.value=""
                        //清空報錯span标簽
                        usernameError.innerText=""
                    }
                }
            }
            //郵箱驗證模塊
            //郵箱失焦事件
            document.getElementById("email").onblur=function(){
                //拿到(dào)郵箱對象
                var email=document.getElementById("email")
                //拿到(dào)郵箱報錯對象
                var emailError=document.getElementById("emailError")
                //拿到(dào)郵箱正則表達對象
                var emailregExp=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
                //拿到(dào)正則判斷對象
                var emailregExpOK=emailregExp.test(email.value)
                //郵箱格式判斷
                if (!emailregExpOK){
                //郵箱格式報錯
                    emailError.innerHTML="<font color='red' size='2'>郵箱格式錯誤!</font>"
                    //聚焦清空模塊
                    document.getElementById("email").onfocus=function(){
                        email.value=""
                        //清空報錯span标簽
                        emailError.innerText=""
                    }
                }
            }
            //重複密碼驗證單元
            //重複密碼失焦事件
            document.getElementById("passwordAgain").onblur=function(){
                //拿到(dào)密碼對象和(hé / huò)密碼重複對象
                var password=document.getElementById("password")
                var passwordagain=document.getElementById("passwordAgain")
                //重複密碼密碼報錯對象
                var passwordgaginError=document.getElementById("passwordAgainError")
                //密碼不(bù)重複事件
                if (password.value!=passwordagain.value){
                //密碼報錯
                    passwordgaginError.innerHTML="<font color='red' size='2'>确認密碼與重複密碼不(bù)一緻!</font>"
                    //聚焦清空模塊
                    document.getElementById("passwordAgain").onfocus=function(){
                        passwordagain.value=""
                        //清空報錯span标簽
                        passwordgaginError.innerText=""
                    }
                }
            }
        }
    </script>
    <!--表單提交,form和(hé / huò)action-->
        <form action="http://localhost:8080/user" method="post">
            <table>
            <tr>
                <th>用戶名:</th>
                <th><input type="text" id="username" name="username"/></th>
                <th><span id="usernameError"></span></th>
            </tr>
            <tr>
                <th>郵    箱:</th>
                <th><input type="text" id="email" name="email"/></th>
                <th><span id="emailError"></span></th>
            </tr>
            <tr>
                <th>密    碼:</th>
                <th><input type="text" id="password" /></th>
                <th><span id="passwordError"></span></th>
            </tr>
            <tr>
                <th>确認密碼:</th>
                <th> <input type="text" id="passwordAgain" name="passwordAgain"/></th>
                <th> <span id="passwordAgainError"></span></th>
            </tr>
            <tr>
                <th></th>
                <th><input action="http://www.localhost:8086.com" type="submit" id="btn" value="提   交" method="post"/></th>
                <th></th>
            </tr>
           </table>
        </form>
    </body>
</html>

相關案例查看更多