用JS计算剩余可用字数
输入框允许的字数范围对用户看来并不可见,是个很抽象的东西,JS可以提供给用户一个很直观的数字,让用户控制好使用的字数。
*此效果涉及到一点HTML DOM知识和JS知识
HTML部分
折叠XML/HTML 代码
- <textarea name="description" onkeyup="checkLength(this);"></textarea>
- <br /><small>文字最大长度: 250. 还剩: <span id="chLeft">250</span>.</small>
可以看出onkeyup是当用户离开键盘后触发的事件,传递的参数是this(也就是当前所在的文档区域)
JS部分
折叠JavaScript 代码
- <script type="text/javascript">
- function checkLength(which) {
- var maxChars = 250;
- if (which.value.length > maxChars)
- which.value = which.value.substring(0,maxChars);
- var curr = maxChars - which.value.length;
- document.getElementById("chLeft").innerHTML = curr.toString();
- }
- </script>
函数中首先给maxChars变量指定了值(输入区内最多可用的字符数,注意,该变量是个可用于计算的数值)。然后从参数中得到在textarea中已输入的字符长度,并与前面指定的最大长度做比较。当输入的字符长度超过范围,则使用substring来强制限制其长度(0,maxChars)的意思就是可输入范围是0个字符到maxChars(变量)个字符。
var curr = maxChars - which.value.length;的作用是算出还可用多少个字符,将数值保存在curr中。
最后通过getElementById定位到id为chLeft的对象(在该HTML中为span),并将curr里的值通过toString方法把数值变为字符串,反馈到span标签内。
Tags: 文本框