基于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 相关文章推荐
js 学习笔记(三)
Dec 29 Javascript
关于jquery性能最佳实践的讨论,与求教
Mar 30 Javascript
JQuery实现鼠标滑过显示导航下拉列表
Sep 12 Javascript
jQuery前端框架easyui使用Dialog时bug处理
Dec 05 Javascript
node.js中的fs.symlinkSync方法使用说明
Dec 15 Javascript
require.js配合插件text.js实现最简单的单页应用程序
Jul 12 Javascript
jQuery实现背景滑动菜单
Dec 02 Javascript
JQuery实现文字无缝滚动效果示例代码(Marquee插件)
Mar 07 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
Jun 21 Javascript
想用好React的你必须要知道的一些事情
Jul 24 Javascript
JavaScript实现各种排序的代码详解
Aug 28 Javascript
vue中如何实现后台管理系统的权限控制的方法示例
Sep 19 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
天津市收音机工业发展史
2021/03/04 无线电
php生成图形(Libchart)实例
2013/11/06 PHP
PHP实现判断数组是一维、二维或几维的方法
2017/02/06 PHP
PHP中file_put_contents追加和换行的实现方法
2017/04/01 PHP
JavaScript 图片预览效果 推荐
2009/12/22 Javascript
Javascript call和apply区别及使用方法
2013/11/14 Javascript
Bootstrap轮播插件使用代码
2016/10/11 Javascript
使用Curl命令查看请求响应时间方法
2016/11/04 Javascript
jQuery的Read()方法代替原生JS详解
2016/11/08 Javascript
javascript数据类型详解
2017/02/07 Javascript
React Native中导航组件react-navigation跨tab路由处理详解
2017/10/31 Javascript
浅谈react-router HashRouter和BrowserRouter的使用
2017/12/29 Javascript
vue2.0 + element UI 中 el-table 数据导出Excel的方法
2018/03/02 Javascript
React props和state属性的具体使用方法
2018/04/12 Javascript
AngularJS中ng-options实现下拉列表的数据绑定方法
2018/08/13 Javascript
NodeJS 实现多语言的示例代码
2018/09/11 NodeJs
vue 中Virtual Dom被创建的方法
2019/04/15 Javascript
ES6 Symbol数据类型的应用实例分析
2019/06/26 Javascript
解决layer弹出层自适应页面大小的问题
2019/09/16 Javascript
python使用SMTP发送qq或sina邮件
2017/10/21 Python
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
Python实现类似比特币的加密货币区块链的创建与交易实例
2018/03/20 Python
对numpy中数组转置的求解以及向量内积计算方法
2018/10/31 Python
python 用opencv调用训练好的模型进行识别的方法
2018/12/07 Python
在django中,关于session的通用设置方法
2019/08/06 Python
Django项目中使用JWT的实现代码
2019/11/04 Python
使用python模拟高斯分布例子
2019/12/09 Python
英国时尚服饰电商:Boohoo
2017/10/12 全球购物
Java程序员面试题
2013/07/15 面试题
工商管理专业应届生求职信
2013/11/04 职场文书
投标承诺书范本
2014/03/27 职场文书
如何写求职信
2014/05/24 职场文书
健康状况证明书
2014/11/26 职场文书
pytorch训练神经网络爆内存的解决方案
2021/05/22 Python
SpringBoot集成Redis,并自定义对象序列化操作
2021/06/22 Java/Android
PYTHON 使用 Pandas 删除某列指定值所在的行
2022/04/28 Python