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

 更新时间:2016年05月25日 17:00:06   作者:韩一宁  
这篇文章主要介绍了基于JS实现textarea中获取动态剩余字数的方法的相关资料,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧

案例介绍:我们常见到有的网站有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中获取动态剩余字数的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 用JS写的一个Ajax库(实例代码)

    用JS写的一个Ajax库(实例代码)

    下面小编就为大家带来一篇用JS写的一个Ajax库(实例代码)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • JS实现页面跳转与刷新的方法汇总

    JS实现页面跳转与刷新的方法汇总

    这篇文章主要给大家介绍了关于JS实现页面跳转与刷新的方法,文中通过示例代码介绍的非常详细,对大家学习或者使用JS具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • javascript中json对象json数组json字符串互转及取值方法

    javascript中json对象json数组json字符串互转及取值方法

    这篇文章主要介绍了javascript中json对象json数组json字符串互转及取值方法,需要的朋友可以参考下
    2017-04-04
  • 原生微信小程序开发中 redux 的使用详解

    原生微信小程序开发中 redux 的使用详解

    这篇文章主要介绍了原生微信小程序开发中 redux 的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • JS公共小方法之判断对象是否为domElement的实例

    JS公共小方法之判断对象是否为domElement的实例

    下面小编就为大家带来一篇JS公共小方法之判断对象是否为domElement的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • uniapp实现可以左右滑动导航栏

    uniapp实现可以左右滑动导航栏

    这篇文章主要为大家详细介绍了uniapp 实现可以左右滑动导航栏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10
  • Bootstrap基本组件学习笔记之进度条(15)

    Bootstrap基本组件学习笔记之进度条(15)

    这篇文章主要为大家详细介绍了Bootstrap基本组件学习笔记之进度条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 使用JS读秒使用示例

    使用JS读秒使用示例

    JS读秒,在某些情况下还是比较实用的,下面有个简单的示例,感兴趣的朋友可以参考下
    2013-09-09
  • Javascript自定义事件详解

    Javascript自定义事件详解

    这篇文章主要介绍了Javascript自定义事件,本质就是观察者模式,好处就是将绑定事件和触发事件相互隔离开等等,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • js获得页面的高度和宽度的方法

    js获得页面的高度和宽度的方法

    做一个弹出dialog时用到了取父页面的宽度和高度的方法,需要的朋友可以参考下
    2014-02-02

最新评论