js弹窗验证失败


之前这样打代码是有,没有输入用户名是有弹窗出来提示的,现在没有。
<script>

function s(){
    var a = document.getElementById('name1').value;
    var b = document.getElementById('pw1').value;
    var c = document.getElementById('pw2').value;

    if (a== ""||a== "null") {
        alert("请好好输入用户名!");
        return false;
    }
    else if (b== ""||b== "null") {
        alert("请正确填写密码!");
        return false;
    }
    else if (c!=b || c== "null") {
        alert("请输入与上面一样的密码");
        return false;
    }
    else{
        return true;
    }

}
</script>

放在了head标签里面,因为是初学,很多不是很明白,在这先谢过帮我的人。


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>debug</title>
        <script>
        function s(){
            var a = document.getElementById('name1').value;
            var b = document.getElementById('pw1').value;
            var c = document.getElementById('pw2').value;
            if (a == ""|| a == "null") {
            alert("请好好输入用户名!");
            return false;
            }
            else if (b == ""|| b == "null") {
            alert("请正确填写密码!");
            return false;
            }
            else if (c != b || c == "null") {
            alert("请输入与上面一样的密码");
            return false;
            }
            else{
            return true;
            }
               }
         </script>
    </head>
    <body>
    用户名:<input id="name1" type="text" value="" /><br />
    输入密码:<input id="pw1" type="password" value="" />
    <br />
    再次输入密码:<input id="pw2" type="password" value="" /><br />
    <input onclick="s()" type="button" value="确定" />
    <!--代码方面是可以执行的 是不是 你 html 方面 哪里 弄错了 -->
</body>
</html>

<script>
 
 function s(){
    var a = document.getElementById('name1').value;
    var b = document.getElementById('pw1').value;
    var c = document.getElementById('pw2').value;

    if (!a) {
        alert("请好好输入用户名!");
        return false;
    }
    else if (!b) {
        alert("请正确填写密码!");
        return false;
    }
    else if (!c||c!=b) {
        alert("请输入与上面一样的密码");
        return false;
    }
    else{
        return true;
    }

}
</script>

报错了,找不到元素,整个页面加载自上而下的,你写在head里,这时候a,b,c三个元素是找不到的,放在</body>前面,这是一种规范,也是最好的解决办法了


这段script要放到</body>之前,内容html之后。还需要调用s()来运行


function s(){} 去掉 只写里面的

另外, a=="null" 这样的判断不知道是不是你的需求要加的,

以我的理解,你是想判断是不是为空,这里是不需要的。直接写 if(a == "") 就可以了



相关阅读:
关于STUN协议中属性的一点问题
vuejs 折叠面板的展开收缩动画应该怎么实现?用vue自带的过渡效果还是css3?
关于表单页面提交信息的判断
extjs3.2 panel组件能否添加focus和blur事件
如何将全局变量i变成函数的局部变量?
vue应用嵌在微信里 ,点击微信右上角的分享其中一个页面的链接 ,怎样让用户点开来就是当前页面呢?
AngularJS路由添加controller问题
PC端API和移动端API有什么不同吗?
pycharm 如何配置 python3 的开发环境?
vue中通过this.$router.push 到当前页面,只是参数不同,页面没有重新请求数据?
vue.js2.0中set和get的问题
$.ajax 跨域 options
mysql 的IFNULL失效
webpack在安装的时候出现问题
使用websocket上传视频文件后无法播放
作用域链的问题?
angular.js高级程序设计书本开头配置环境出错,谁能给解答一下
样式和类样式区别
关于this在浏览器中的指向
在node.js里面可以使用window对象的方法吗



快速导航

Copyright © 2016 phpStudy |