为了账号安全,请及时绑定邮箱和手机立即绑定

任务三自己写的,不能运行,关于几个细节,代码中有标出

任务三自己写的,不能运行,关于几个细节,代码中有标出,请帮我看一看,是哪里导致代码不能运行呢?另外,排名最前的代码里,为什么把j当作一个数组来用呢?

        function checkone(){

            var j=document.getElementById("wb").value;

            if(j!=null)//想判断是否有输入

            { 

                var vj=parseInt(j);

                clearall();

                if(vj<0||vj>6||isNan(j))//判断j是否越界或者是否为数字

                {

                    alert("输入不合法,请重新输入!");

                    document.getElementById("wb").value=" ";//重新清空输入框

                }

                else{

                    hobby[vj-1].checked=true;

                }

            }

         // 任务3

        

        }


正在回答

2 回答

 function checkone(){    clearall();

            var j=document.getElementById("wb").value;

            var hobby = document.getElementsByName("hobby");

if(j!=null)//想判断是否有输入

            { var vj=parseInt(j);

       if(isNaN(vj))//判断j是否越界或者是否为数字

                {alert("输入不合法,请重新输入!"); document.getElementById("wb").value=" ";//重新清空输入框}

        else if(vj<=0||vj>6){alert("输入不合法,请重新输入!"); document.getElementById("wb").value=" ";//重新清空输入框 }

                else{hobby[vj-1].checked=true; }

            }

}

1:hobby为局部变量,只能在函数体内使用,所以要先声明再赋值。

2:个人觉得isNaN()的值是false或者true,跟数值不在一个取值域里面,所以else不起作用。(第二点也不是很明白,我个人的理解,不知道对不对)

0 回复 有任何疑惑可以回复我~

value不能直接赋值给变量

var j=document.getElementById("wb");

            if(j.value!=null)//想判断是否有输入


0 回复 有任何疑惑可以回复我~
#1

azure1016 提问者

我看到有同学就是这么写的:var j=document.getElementById("wb").value; 而且我按照您说的改了,依然不能运行呢。还是要感谢您~
2016-08-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

任务三自己写的,不能运行,关于几个细节,代码中有标出

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信