js怎么实时获取input的value值

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Verification输入验证</title>
        <script type="text/javascript">
            window.onload = function() {
                var buttonClick = document.getElementsByTagName('button')[0];
                var cellPhone = document.getElementsByTagName('input')[0].value;
                var age = document.getElementsByTagName('input')[1].value;
                buttonClick.onclick = function () {
                    if (cellPhone == "" || isNaN(cellPhone)) {
                        alert('请输入手机号码');
                    }
                }
            }
        </script>
    </head>
    <body>
        手机号码:
        <input type="text" name="cellPhone"  value="">
        年龄:
        <input type="text" name="age" value="">    
        <button>提交</button>
    </body>
</html>

每次获取到的input值都是空,手动输入了值也是空,怎么回事呢

阅读 16.2k
5 个回答

你挂在window.onload事件下去读取编辑框,也就是页面加载完的时候执行,这时编辑框内容还空着呢,你应该在提交的点击事件,再去读取就对了。

window.onload = function() {
    var buttonClick = document.getElementsByTagName('button')[0]; 
    
    buttonClick.onclick = function () {
         var cellPhone = document.getElementsByTagName('input')[0].value;
         var age = document.getElementsByTagName('input')[1].value;
        if (cellPhone == "" || isNaN(cellPhone)) {
            alert('请输入手机号码');
        }
    }
}
window.onload = function() {
                var buttonClick = document.getElementsByTagName('button')[0]; 
                buttonClick.onclick = function () {
                     var cellPhone = document.getElementsByTagName('input')[0].value;
                     var age = document.getElementsByTagName('input')[1].value;
                    if (cellPhone == "" || isNaN(cellPhone)) {
                        alert('请输入手机号码');
                    }
                }
            }

你需要的不是实时,你只需要在点击按钮之后去取值就可以了……
你现在的 cellPhone 是在点击之前就取了,那怎么可能取的到- -

buttonClick.onclick = function () {
  var cellPhone = document.getElementsByTagName('input')[0].value;
}

你在window.onload获取当然是空啊,你自己写的value="",你在onclick的回调上获取啊。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏