请老师检查 谢谢
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>输入文本</title>
</head>
<body>
<p>字数限制在30字内,<span>您还可以输入<b id="count">30</b> 字</span></p>
<textarea cols="50" rows="7" id="text"></textarea>
<br><button type="submit" id="btnSubmit"
style="width: 120px;height:30px;background-color: green;font-size: 18px;color:white">提交</button>
<script type="text/javascript">
//补充代码
var text = document.getElementById("text");
var count = document.getElementById("count");
var btnSubmit = document.getElementById("btnSubmit");
text.onkeyup = function () {
var len = text.value.length;
var total = 30;
var allow = total - len;
if (allow < 0) {
count.innerHTML = allow;
btnSubmit.innerHTML = "禁止提交";
btnSubmit.style.cursor = "not-allowed";
btnSubmit.style.backgroundColor = "red";
btnSubmit.setAttribute("disabled", "disabled");
} else {
count.innerHTML = allow;
btnSubmit.innerHTML = "提交";
btnSubmit.style.cursor = "default";
btnSubmit.style.backgroundColor = "green";
btnSubmit.removeAttribute("disabled")
}
}
</script>
</body>
</html>10
收起
正在回答
1回答
同学你好,效果实现了,建议优化:直接给span赋值,字数超出时,提示用户字数超出了,而不是显示负数,效果实现会更好。示例:

另,建议优化:在外部使用css样式替代行内样式,便于后期修改与代码维护。
如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星