4-11作业疑问
来源:4-11 编程练习
从不学习
2021-09-22 21:19:06
问题描述:
不清楚学过的内容怎么获取输入框内容的长度
代码对吗
相关代码:
<!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"> <span></span>
<script type="text/javascript">
// 补充代码
var inp = document.getElementsByTagName("input")[0];
var inspan = document.getElementsByTagName("span")[0];
inp.onfocus = function(){
inspan.innerHTML="请输入您的姓名"
}
inp.onblur = function(){
if(inp.value.length == 0){
console.log(inp.value.length,"a")
inspan.innerHTML="用户名不能为空"
inp.style.border = "1px solid red"
}else{
console.log(inp.value.length,"b")
inspan.innerHTML=""
inp.style.border = "1px solid #000"
}
}
</script>
</body>
</html>
1回答
同学你好,之前的课程中学习过length属性用于获取长度,既可以获取数组长度,也可以获取字符串长度,如图

所以,一般遇到获取长度的问题,都会使用length属性。
此时如果要获取输入框内容的长度,需要先获取到输入框内容,即:inp.value(输入框内容保存在value属性中,打点调用value属性即可获取到),然后再打点调用length属性即可获取到输入框内容的长度,即:inp.value.length
关于代码实现效果有一点小问题:当输入框获得焦点时,输入框值不为空,也会提示“请输入您的姓名”,建议参考以下代码修改一下:

祝学习愉快!
相似问题