用JS计算多行文本框的剩余可用字数并显示

用JS计算剩余可用字数

输入框允许的字数范围对用户看来并不可见,是个很抽象的东西,JS可以提供给用户一个很直观的数字,让用户控制好使用的字数。
*此效果涉及到一点HTML DOM知识和JS知识

HTML部分

折叠XML/HTML 代码
  1. <textarea name="description" onkeyup="checkLength(this);"></textarea>     
  2. <br /><small>文字最大长度: 250. 还剩: <span id="chLeft">250</span>.</small>    
 可以看出onkeyup是当用户离开键盘后触发的事件,传递的参数是this(也就是当前所在的文档区域)

JS部分

折叠JavaScript 代码
  1. <script type="text/javascript">    
  2. function checkLength(which) {    
  3. var maxChars = 250;    
  4. if (which.value.length > maxChars)    
  5. which.value = which.value.substring(0,maxChars);    
  6. var curr = maxChars - which.value.length;    
  7. document.getElementById("chLeft").innerHTML = curr.toString();    
  8. }    
  9. </script>   
       函数中首先给maxChars变量指定了值(输入区内最多可用的字符数,注意,该变量是个可用于计算的数值)。然后从参数中得到在textarea中已输入的字符长度,并与前面指定的最大长度做比较。当输入的字符长度超过范围,则使用substring来强制限制其长度(0,maxChars)的意思就是可输入范围是0个字符到maxChars(变量)个字符。
  var curr = maxChars - which.value.length;的作用是算出还可用多少个字符,将数值保存在curr中。
  最后通过getElementById定位到id为chLeft的对象(在该HTML中为span),并将curr里的值通过toString方法把数值变为字符串,反馈到span标签内。

 

Tags: 文本框
cms大学,为帝国cms用户提供动力
Copyright © 2016 CmsDX.com All Rights Reserved.