麻烦老师检查一下问题
来源:4-11 编程练习
wan520
2021-10-21 15:11:35
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>onblur和onfocus</title>
<style type="text/css">
.red{
border:1px solid red;
}
</style>
</head>
<body>
姓名:<input type="text" id='name'> <span></span>
<script type="text/javascript">
// 补充代码
var name=document.getElementById('name');
var span=document.getElementsByTagName('span')[0];
name.onfocus=function(){
if(name.value==''){
span.innerText='请输入您的姓名';
name.className='';
}else{
span.innerText='';
}
}
name.onblur =function(){
if(name.value==''){
span.innerText='用户名不能为空';
name.className='red';
}else{
span.innerText='';
name.className='';
}
}
</script>
</body>
</html>1回答
好帮手慕小李
2021-10-21
同学你好,你碰到了一个JavaScript的小坑,在全局声明name变量,是不可以的,因为name是JavaScript的内置属性,也就是说javaScript不让咱们用,所以我们在声明变量时尽量避免用到name。

下面的图中分号用的是中文的分号,所以报错,会影响到程序的运行。

更改建议如下,红色部分改过来即可,老师把你之前声明的name变量名换成了userName。

祝学习愉快~
相似问题