<!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>if后面的条件改成kk==null;就会执行弹窗,但是不管我有没有输入 它都只执行弹窗 else后面的就完全没有效果不改的话又只执行else后面的。我真的快疯了 不知道哪里出错了
2 回答
已采纳
stone310
TA贡献361条经验 获得超191个赞
myOn是获取input的一个集合,要分开写对应的判断,否则无论输入什么都会一直提示undefined;
主要问题就是这个,剩下就是分别判断,让这两个input的有其中一个为false(未输入),那么就alert
<script type="text/javascript"> function Trim(str) //去空格函数 ,如果不要这个函数就直接删掉,然后下面if()那里的Trim()也删掉就好了 { return str.replace(/(^\s*)|(\s*$)/g, ""); } function myblur(){ var myOn=document.getElementsByClassName("mytext"); var name=myOn[0].value; //每个input的value分开写 var psd=myOn[1].value; //每个input的value分开写 if(!Trim(name)||!psd){ //当name不为全空格不为空 并且 psd不为空 alert("please fill in the information completely!"); } else{ var myname=document.getElementById("myname"); var bb=myname.value; document.write("welcome!"+" "+bb); } } </script>
添加回答
举报
0/150
提交
取消