js中用户注册界面验证(31)

JavaScript校验要求: 
      1.每一项都必须填写内容或者做出选择,不能存在空项; 
      2.用户名:只能包含英文字母和下划线,长度为6-18个字符; 
      3.密码:必须包含英文字母大小写和数字,长度不能少于6个字符; 
      4.确认密码:必须与密码相同; 
      5.联系电话:确保手机号码的有效性; 
      6.电子邮箱:确保电子邮箱的有效性; 
  7.如果用户没有按照以上要求输入信息,则当光标离开该项时,在该项的右侧用红色字体给出相应的提示信息。

<html>
<head>
    <meta charset="UTF-8">
    <title>新用户注册</title>
</head>
<style>
    form{
        width: 700px;
        margin: 50px auto;
        padding: 20px;
        border: 1px solid black;
    }
    div{
        padding: 5px 0;
    }
    label{
        display: inline-block;
        width: 100px;
        margin-right: 40px;
        text-align: right;
    }
    span{
        color: #FF0000;
        font-size:12px
    }
    .inputText{
        display: inline-block;
        width: 260px;
        margin-right: 20px;
    }
</style>
<!--
    JavaScript校验要求:
    1.每一项都必须填写内容或者做出选择,不能存在空项;+++++++++


    2.用户名:只能包含英文字母和下划线,长度为6-18个字符;++++++++


    3.密码:必须包含英文字母大小写和数字,长度不能少于6个字符;++++++
    4.确认密码:必须与密码相同;


    5.联系电话:确保手机号码的有效性;+++++++++
    6.电子邮箱:确保电子邮箱的有效性;+++++++++

    7.如果用户没有按照以上要求输入信息,则当光标离开该项时,在该项的右侧用红色字体给出相应的提示信息。++++++
-->
<script>
//    用户名
    function YHMonblus(){
        var username=document.getElementById("username");
       // var reN =/^\d{6,18}$/;
        var re = /^[a-zA-Z_]{6,18}$/;
        if(username.value==""){
            document.getElementById('YHMerror').innerText="请输入用户名";
        }
        else if(username.value.length < 6 ||username.value.length > 18){
            console.log(username.value);
            document.getElementById('YHMerror').innerText="格式错误,长度应为6-18个字符";
        }
        else if(!re.test(username.value)){

            document.getElementById('YHMerror').innerText="格式错误,只能包含英文字母和下划线";
        }
        else {
            document.getElementById('YHMerror').innerText ="";
        }
    }
    function YHMonfocu(){
            document.getElementById('YHMerror').innerText ="";
    }
//   密码
    function MMonblus(){
          var password=document.getElementById("password");
          var re = /^(?=.*\d)(?=.*[a-zA-Z])[\da-zA-Z]{6,}$/;
         // var reg=/[A-Za-z].*[0-9]|[0-9].*[A-Za-z]/;

        if(password.value==""){
        document.getElementById('MMerror').innerText="请输入密码";
        }
          else if(password.value.length < 6){
             document.getElementById('MMerror').innerText="格式错误,,密码长度至少为6位";
         }

         else if(!re.test(password.value)){
             document.getElementById('MMerror').innerText="格式错误,必须包含英文字母大小写和数字";
        }
         else {
        document.getElementById('MMerror').innerText ="";
        }
}
    function MMonfocu(){
        document.getElementById('MMerror').innerText ="";
    }

//    确认密码
    function QRMMonblus(){
        var password=document.getElementById("password");
        var confirmPassword=document.getElementById("confirmPassword");
        if(confirmPassword.value==""){
            document.getElementById('QRMMerror').innerText="请输入确认密码";
        }
        else if(password.value != confirmPassword.value){
            document.getElementById('QRMMerror').innerText="两次密码输入不一致";
        }
        else {
            document.getElementById('QRMMerror').innerText ="";
        }
    }
    function QRMMonfocu(){
        document.getElementById('QRMMerror').innerText ="";
    }

//    性别
    function XBonblus(){
//        var radios = document.getElementsByName("gender");
//        if(radios.checked == false){
//            document.getElementById('XBerror').innerText="请选择性别";
//        }else {
//            document.getElementById('XBerror').innerText ="";
//        }
    }
    function XBonfocu(){
//        document.getElementById('XBerror').innerText ="";
    }

//    爱好
    function AHonblus(){
        var hobbys = document.getElementsByName("hobby");
        if(hobbys[0].checked == false&&hobbys[1].checked == false&&hobbys[2].checked == false){
            document.getElementById('AHerror').innerText="请选择爱好";
        }else {
            document.getElementById('AHerror').innerText ="";
        }
    }
    function AHonfocu(){
        document.getElementById('AHerror').innerText ="";
    }
//    联系电话
    function LXDHonblus(){
        var phone=document.getElementById("phone");
        var re = /^1\d{10}$/;
        if(phone.value==""){
            document.getElementById('LXDHerror').innerText="请输入联系电话";
        }
        else if(!re.test(phone)){
            document.getElementById('LXDHerror').innerText="电话格式输入错误";
        }
        else {
            document.getElementById('LXDHerror').innerText ="";
        }
    }
    function LXDHonfocu(){
        document.getElementById('LXDHerror').innerText ="";
    }
//    电子邮箱
    function DZYXonblus(){
        var email=document.getElementById("email");
        var re= /[a-zA-Z0-9]{1,10}@[a-zA-Z0-9]{1,5}\.[a-zA-Z0-9]{1,5}/;
        if(email.value==""){
            document.getElementById('DZYXerror').innerText="请输入电子邮箱";
        }
        else if(!re.test(email.value)){
            document.getElementById("DZYXerror").innerHTML="邮箱格式不正确";
        }
        else {
            document.getElementById('DZYXerror').innerText ="";
        }
    }
    function DZYXonfocu(){
        document.getElementById('DZYXerror').innerText ="";
    }

</script>


<body>
<form method="" action="post" name="frm">
    <div >
        <label>用户名</label>
        <input type="text" id="username" class="inputText" placeholder="请输入您的用户名" onfocus="YHMonfocu()" onblur="YHMonblus()" />
        <span id="YHMerror">
        </span>
    </div>

    <div>
        <label>密码</label>
        <input type="password" id="password" class="inputText" placeholder="请输入您的密码" onfocus="MMonfocu()" onblur="MMonblus()"/>
        <span id="MMerror">
        </span>
    </div>
    <div>
        <label>确认密码</label>
        <input type="password" id="confirmPassword" class="inputText" placeholder="请确认您的密码" onfocus="QRMMonfocu()" onblur="QRMMonblus()"/>
        <span id="QRMMerror">
        </span>
    </div>
    <div>
        <label>性别</label>
        <input type="radio"  name="gender" value="male" onfocus="XBonfocu()" onblur="XBMonblus()" checked="true"/>男
        <input type="radio"  name="gender" value="female" onfocus="XBMonfocu()" onblur="XBMonblus()"/>女
        <span id="XBerror">
        </span>
    </div>
    <div>
        <label>爱好</label>
        <input type="checkbox" name="hobby" value="Coding" onfocus="AHonfocu()" onblur="AHonblus()"/>写代码
        <input type="checkbox" name="hobby" value="Running" onfocus="AHonfocu()" onblur="AHonblus()"/>跑步
        <input type="checkbox" name="hobby" value="Sleeping" onfocus="AHonfocu()" onblur="AHonblus()"/>睡觉
        <span id="AHerror">
        </span>
    </div>
    <div>
        <label>联系电话</label>
        <input type="text" id="phone" class="inputText" placeholder="请输入您的联系电话" onfocus="LXDHonfocu()" onblur="LXDHonblus()"/>
        <span id="LXDHerror">
        </span>
    </div>
    <div>
        <label>电子邮箱</label>
        <input type="email" id="email" class="inputText" placeholder="请输入您的电子邮箱" onfocus="DZYXonfocu()" onblur="DZYXonblus()"/>
        <span id="DZYXerror">
        </span>
    </div>
</form>

</body>
</html>

 

 

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的使用 JavaScript 实现用户注册验证的代码示例: 1. 界面部分 ```html <form id="register-form" method="post" action="register.php"> <input type="text" name="username" placeholder="用户名" required> <input type="password" name="password" placeholder="密码" required> <input type="email" name="email" placeholder="邮箱" required> <input type="tel" name="phone" placeholder="电话" required> <input type="text" name="captcha" placeholder="验证码" required> <img id="captcha-img" src="captcha.php" onclick="refreshCaptcha();" alt="验证码"> <input type="submit" value="注册"> </form> ``` 2. 前端验证部分 ```javascript function refreshCaptcha() { var captchaImg = document.getElementById("captcha-img"); captchaImg.src = "captcha.php?" + Math.random(); } function validateForm() { var username = document.forms["register-form"]["username"].value; var password = document.forms["register-form"]["password"].value; var email = document.forms["register-form"]["email"].value; var phone = document.forms["register-form"]["phone"].value; var captcha = document.forms["register-form"]["captcha"].value; if (username == "") { alert("请输入用户名"); return false; } if (password == "") { alert("请输入密码"); return false; } if (email == "") { alert("请输入邮箱"); return false; } if (phone == "") { alert("请输入电话"); return false; } if (captcha == "") { alert("请输入验证码"); return false; } return true; } ``` 3. 后端验证部分与验证码生成部分同上。 在以上代码,`refreshCaptcha()` 函数用于刷新验证码图片,`validateForm()` 函数用于在用户提交表单时验证用户输入的信息,如果有任何一个输入框为空,则会弹出一个警告框提示用户输入信息,如果所有输入框都不为空,则返回 `true`,表示表单验证通过,可以提交表单了。 需要注意的是,前端验证只是为了提高用户体验,防止用户因为忘记输入某些信息而提交失败,但是前端验证并不能完全保证数据的安全性,真正的数据验证必须在后端进行,因此,后端验证验证码的生成与验证是必不可少的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值