基于JS实现textarea中获取动态剩余字数的方法


Posted in Javascript onMay 25, 2016

案例介绍:我们常见到有的网站有textarea文本框,当你输入的时候,下面有文字提示还能输入多少个字,今天就是要实现这个功能。当然,由于一个页面有好几个textarea,所以使用单个js逻辑进行控制是不行的,得小小的进行封装一下。当然我的封装还有缺漏,但是基本功能是实现了。

首先介绍下单个textarea实现案例

html部分:

<textarea id="text_txt1"></textarea>
<span id ="num_txt1">剩余可输入600字</span>

js部分:

$(function(){
$('#text_txt1').on('keyup',function(){
var txtval = $('#text_txt1').val().length;
console.log(txtval);
var str = parseInt(600-txtval);
console.log(str);
if(str > 0 ){
$('#num_txt1').html('剩余可输入'+str+'字');
}else{
$('#num_txt1').html('剩余可输入0字');
$('#text_txt1').val($('#text_txt1').val().substring(0,600)); //这里意思是当里面的文字小于等于0的时候,那么字数不能再增加,只能是600个字
}
//console.log($('#num_txt').html(str));
});
})

然后介绍同页面下多个textarea实现案例

function changeLength(obj,num){
obj.on('keyup',function(){
var txtval = obj.val().length;
//console.log(txtval);
var str = parseInt(600-txtval);
//console.log(str);
if(str > 0 ){
num.html('剩余可输入'+str+'字');
}else {
num.html('剩余可输入0字');
obj.val(obj.val().substring(0, 600));
}
//console.log($('#num_txt').html(str));
});
}
$(function(){ //我这里有四个,所以调用4次
changeLength($('#text_txt1'),$('#num_txt1'));
changeLength($('#text_txt2'),$('#num_txt2'));
changeLength($('#text_txt3'),$('#num_txt3'));
changeLength($('#text_txt4'),$('#num_txt4'));
});

当然这里面实际上要求的字数也可以封装在函数内部,不过我就不封装了。这样就实现了当输入文字的时候,span内部会自动显示剩余字数,当输入值达最高值时,显示剩余字数为0,且无法在新填入内容。当删除文字的时候,span又能动态获取剩余字数。

下面上下别人的代码,这次多少也借鉴了别人的写法

html:

<div class="family_v2">
<p class="nickname_v2">简介:</p>
<textarea id="content" name="sign" style="height:60px;overflow-y: hidden;"
onkeyup="changeLength(this,60)" class="nicknameBox_v2 brief_box_v2">
</textarea>
<div class="limit_num_v2">
<h3>60</h3>
</div>
</div>

js:

//验证textarea的长度
function changeLength(obj,lg){
var len = $(obj).val();
$(obj).next().find("h3").text(lg-len.length);
if(len.length>=lg){
$(obj).next().find("h3").text(0);
$(obj).val(len.substring(0,lg));
}
}

以上所述是小编给大家介绍的基于JS实现textarea中获取动态剩余字数的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript下arguments,caller,callee,call,apply示例及理解
Dec 24 Javascript
jQuery dialog 异步调用ashx,webservice数据的代码
Aug 03 Javascript
javascript中call和apply方法浅谈
Sep 27 Javascript
js实现带搜索功能的下拉框实时搜索实时匹配
Nov 05 Javascript
javascript获取web应用根目录的方法
Feb 12 Javascript
javascript实现仿腾讯游戏选择
May 14 Javascript
javascript比较两个日期相差天数的方法
Jul 23 Javascript
jQuery解析json格式数据简单实例
Jan 22 Javascript
详解angular ui-grid之过滤器设置
Jun 07 Javascript
解决Mac安装thrift因bison报错的问题
May 17 Javascript
vue.js+element-ui动态配置菜单的实例
Sep 07 Javascript
elementUI 设置input的只读或禁用的方法
Oct 30 Javascript
js将json格式的对象拼接成复杂的url参数方法
May 25 #Javascript
使用jquery获取url以及jquery获取url参数的实现方法
May 25 #Javascript
jquery分隔Url的param方法(推荐)
May 25 #Javascript
sso跨域写cookie的一段js脚本(推荐)
May 25 #Javascript
使用jquery提交form表单并自定义action的方法
May 25 #Javascript
浅析jQuery 遍历函数,javascript中的each遍历
May 25 #Javascript
jquery 遍历数组 each 方法详解
May 25 #Javascript
You might like
php中的curl使用入门教程和常见用法实例
2014/04/10 PHP
PHP定时任务延缓执行的实现
2014/10/08 PHP
php实现mysql数据库分表分段备份
2015/06/18 PHP
基于php中echo用逗号和用点号的区别详解
2018/01/23 PHP
使用PHP开发留言板功能
2019/11/19 PHP
表单提交验证类
2006/07/14 Javascript
javascript appendChild,innerHTML,join性能比较代码
2009/08/29 Javascript
学习ExtJS 访问容器对象
2009/10/07 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
javascript延时加载之defer测试
2012/12/28 Javascript
jQuery ui插件的使用方法代码实例
2013/05/08 Javascript
JS中Location使用详解
2015/05/12 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
详解vue 单页应用(spa)前端路由实现原理
2018/04/04 Javascript
JS与SQL方式随机生成高强度密码示例
2018/12/29 Javascript
vue将后台数据时间戳转换成日期格式
2019/07/31 Javascript
three.js 如何制作魔方
2020/07/31 Javascript
详解JavaScript的this指向和绑定
2020/09/08 Javascript
python将ip地址转换成整数的方法
2015/03/17 Python
通过Python使用saltstack生成服务器资产清单
2016/03/01 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
理肤泉英国官网:La Roche-Posay英国
2019/01/14 全球购物
上班迟到检讨书
2014/01/10 职场文书
《富饶的西沙群岛》教学反思
2014/04/09 职场文书
作文评语大全
2014/04/23 职场文书
爱我中华演讲稿
2014/05/20 职场文书
党员志愿者活动总结
2014/06/26 职场文书
小学生关于梦想的演讲稿
2014/08/22 职场文书
新闻学专业职业生涯规划范文:我的人生我做主
2014/09/12 职场文书
活动新闻稿范文
2015/07/17 职场文书
2016学校先进党组织事迹材料
2016/02/29 职场文书
SQL Server基本使用和简单的CRUD操作
2021/04/05 SQL Server
mysql死锁和分库分表问题详解
2021/04/16 MySQL
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang
nginx中proxy_pass各种用法详解
2021/11/07 Servers