为什么删除字体和中文字体都对数值无效
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>输入文本</title>
</head>
<body>
<p>字数限制在30字内,<span>您还可以输入<b id="allow">30</b> 字</span></p>
<textarea cols="50" rows="7" id="text"></textarea>
<script type="text/javascript">
//补充代码
var text=document.getElementById("text");
var allow=document.getElementById("allow");
var allowtext=allow.innerHTML;
var total=0;
document.write(allowtext);
document.onkeypress=function(){
total=text.value.length;
allowtext=allowtext-total;
allow.innerHTML=allowtext;
}
</script>
</body>
</html>
如题,都是innerHTML读取的数值
为什么中文字体无效,还有我删除了之后减去的数值没回复啊
正在回答
同学你好,可以参考下方:
1、onkeypress不能监听键盘的回删键,所以在删除时,提示值没有改变。中文也不能正常的监听。建议:使用onkeyup事件
2、提示文字中的数字是不正确的,执行过程如下:
建议:同学可以尝试着理解下老师给出的方法。祝学习愉快~
同学你好,实现本编程题,要使用onkeyup事件,具体的修改可以参考下方:
代码:
<script type="text/javascript"> //补充代码 var text = document.getElementById("text"); var allow = document.getElementById("allow"); // 获取span var span = document.getElementById("span") // 一共可以输入多少字 var allowtext = 30; var total = 0; document.onkeyup = function () { // 输入框中的字数 total = text.value.length; // 如果输入框中的字数小于30 if (total < 30) { // 改变提示文字 span.innerHTML = "您还可以输入" + "<b>" + (allowtext - total) + "</b>" + "字"; } else { span.innerHTML = "您已超出" + "<b>" + (total - allowtext) + "</b>" + "字"; } } </script>
如果我的回答帮到了你,欢迎采纳,祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星