问答详情
源自:6-6 失焦事件(onblur)

为什么我的代码只执行else后面的了,大神能不能帮我看看前面有什么错误?

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<title> shijiao </title>
<script type="text/javascript">
   function myblur(){
     var myOn=document.getElementsByClassName("mytext");
	 var kk=myOn.value;
	 if(kk==""){
        alert("please fill in the information completely!");
	 }
	 else{
		 var myname=document.getElementById("myname");
		 var bb=myname.value;
		 document.write("welcome!"+" "+bb);
	 }
   }
   
</script>
</head>
<body>
<form>
用户名:<input class="mytext" id="myname" type="text" placeholder="David">
密码:<input class="mytext" type="password" >
<input type="button" value="ok" onClick="myblur()">
</form>
</body>
</html>


提问者:Sheryl要做优秀的UID 2016-10-26 10:51

个回答

  • 慕移动9181930
    2022-03-26 05:44:49

    第15行应该为for(i=0;ilt;oLi.length;i++),你把第一个分号写成了逗号吆。

  • 慕粉1440489053
    2017-03-25 00:37:32

    myOn是一个数组 myOn[0]是用户名文本框;myOn[1]是密码框

  • 紫逸凌
    2016-10-29 11:44:44

    <!doctype html>

    <html>

    <head>

    <meta charset="utf-8">

    <title>无标题文档</title>

    <script type="text/javascript">

       function myblur(){

         var myOn1=document.getElementById("myname");

    var myOn2=document.getElementById("mymess");

         var kk=myOn1.value;

    var mm=myOn2.value;

    if(kk==""||mm==""){

            alert("please fill in the information completely!");

         }

         else{

             var myname=document.getElementById("myname").value;

             var bb=myname;

             document.write("welcome!"+" "+bb);

          }

       }

        

    </script>

    </head>

    <body>

    <form>

    用户名:<input id="myname" type="text" placeholder="David">

    密码:<input id="mymess" type="password">

    <input type="button" value="ok" onClick="myblur()">

    </form>

    </body>

    </html>

    这个对了

  • Sheryl要做优秀的UID
    2016-10-26 19:33:29

    我懂了

    myOn是获取input的一个集合,要分开写对应的判断,否则无论输入什么都会一直提示undefined;

    主要问题就是这个,剩下就是分别判断,让这两个input的有其中一个为false(未输入),那么就alert

    <script type="text/javascript">
       function myblur(){
         var myOn=document.getElementsByClassName("mytext");
    	 var kk=myOn[0].value;
    	 var mm=myOn[1].value;
    	 if(kk==""||mm==""){
            alert("please fill in the information completely!");
    	 }
    	 else{
    		 var myname=document.getElementById("myname");
    		 var bb=myname.value;
    		 document.write("welcome!"+" "+bb);
    	 }
       }
       
    </script>

    换成这个 就解决了

  • juventuslm
    2016-10-26 11:46:25

    null、NAN等这些情况没有考虑吧,看看它取到什么值

  • qq_落花有意_1
    2016-10-26 11:42:19

    把kk==""改成kk==null就对了 kk==null,是说kk这个变量还没有内容,也就是kk为空