javascript从input的获取用户输入值的注意点

错误操作

当获取用户输入值位于事件发生之前,即页面刚加载完毕时就获取了文本框中的数据此时数据时空的,后续用此做操作会出现错误

 //获取用户输入的用户名
    var un = document.getElementById("username").value;
    //定义检验用户名函数 
    function checkusername() {
        //获取用户输入的值
        
        var flag1 =reg_username.test(un);
        //假如用户名正确输入图片
        if(flag1){
            var s_username = document.getElementById("s_username");
            s_username.innerHTML="<img src='img/gou.png'>";
            return flag1;
        }else{
            var s_username = document.getElementById("s_username");
            s_username.innerHTML="用户名格式错误";
            return flag1
        }
    }

此时的un为在页面加载完毕时,就获取了文本框中的信息,但此时文本框中无输入信息,所以var flag1 =reg_username.test(un);根据正则表达式判断始终都为false,即使输入正确的数据 在检验函数内也没有重新获取用户输入值的语句,所以始终都会提示 用户名格式错误

正确操作

将获取用户输入值语句,放在函数内,从而确保是在用户输入数据后,事件发生调用函数获取用户输入的数据,那么后续即可正常进行正则表达式的判断 从而完成对用户输入用户名的校验
在这里插入图片描述
定义在函数内部即可

猜你喜欢

转载自blog.csdn.net/lvyangxue/article/details/107171027
今日推荐