博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js动态提示输入框剩余字符数
阅读量:6888 次
发布时间:2019-06-27

本文共 1847 字,大约阅读时间需要 6 分钟。

[html] 
  1.   

效果如上面两图。

页面代码为:

[html] 
  1. <dd class="ediTabCont">  
  2.     <textarea name="Note" id="message" cols="" rows="" style="width: 370px; height: 128px; border: 1px solid #ccc"></textarea>  
  3.     <p>  
  4.         <em>Optional</em><span><b id="num" style="color:#ff0000">8000</b> characters left</span></p>  
  5. </dd>  
JS代码为:

[javascript] 
  1.     $(document).ready(function() {  
  2.     initBind();  
  3. })  
  4.   
  5. function initBind()  
  6. {  
  7.     $("#message").blur(function(){ checkMessage();});  
  8.     $("#message").keyup(function() { checkMessage(); });  
  9.     $("#message").keydown(function() { checkMessage(); });  
  10. }  
  11.   
  12. function checkMessage()  
  13. {  
  14.     $("#num").html(8000 - $('#message').val().length);  
  15.     var pattern = /[\s\S]{20,2000}/;  
  16.     if($('#message').val().length  != 0)  
  17.     {  
  18.     if(!pattern.test($('#message').val()) || $('#message').val().length < 20)  
  19.     {  
  20.         err = false;  
  21.         $("#errmessage").show();  
  22.     }            
  23.      else  
  24.     {  
  25.         err = true;  
  26.         $("#errmessage").hide();  
  27.         if (err1 && err2 && err3 && err) {  
  28.             $("#Button1Error").hide();  
  29.         }  
  30.     }  
  31.     }  
  32.     else  
  33.     {  
  34.         err = true;  
  35.         $("#errmessage").hide();  
  36.         if (err1 && err2 && err3 && err) {  
  37.             $("#Button1Error").hide();  
  38.         }  
  39.     }  
  40. }  

JavaScript中统计Textarea字数并提示还能输入的字符

现在流行的Twitter等微博客网站,有一个很好的用户体验,就是在文本框中输入文字的时候,会自动统计输入的字符,并显示用户还能输入的字符,在限制了140个字的微博客中,这样的小提示可以很好的增强用户体验。 



如果实现这种技术呢,我进行了一些研究,发现实现其实挺简单,几行代码就能完成输入字符统计功能,经过实际测试,其对文字的统计与Twitter等微博客的完全相同。 


使用方法是,先增加一个span,用于显示剩余的字数,然后在Textarea中,加入一个onkeydown和onkeyup的事件,调用另一段JavaScript函数,函数调用的参数为span的id和textarea的id,然后再JavaScript中使用innerHTML返回计算出来的剩余字数。 


核心Javascript代码: 

代码如下:
<span style="font-size:18px;"><script language="javascript"> 
function countChar(textareaName,spanName) 
document.getElementById(spanName).innerHTML = 140 - document.getElementById(textareaName).value.length; 
</script> 
可以输入<span id="counter">140</span>字<br/> 
<textarea id="status" name="status" rows="6" cols="40" οnkeydοwn='countChar("status","counter");' 
οnkeyup='countChar("status","counter");'></textarea></span> 

你可能感兴趣的文章
WCF中有关Session的小实验
查看>>
C#设计模式(13)——代理模式(Proxy Pattern)
查看>>
如何在VIEW 5中配置日志数据库
查看>>
android的互联网开发 下
查看>>
JDBC连接属性
查看>>
百度地图 demo 在html中显示 在jsp中不显示
查看>>
Mac下安装Caffe
查看>>
RDS-MSSQL问题排查方法
查看>>
实现u-boot对yaffs/yaffs2文件系统下载的支持
查看>>
Android Service与Activity之间通信的几种方式
查看>>
表格模板
查看>>
git reset
查看>>
我的友情链接
查看>>
linux内核和发行版本介绍
查看>>
Linux下网络启动服务器安装和配置方法(pxe+tftp+dhcpd)
查看>>
salt 安装脚本
查看>>
获取Spring容器中的Bean
查看>>
ORA-01210: data file header is media corrupt
查看>>
Aerospike开发指南【中文】
查看>>
Python批量修改一个目录文件名
查看>>