微信小程序~textarea字数限制与计算

先看效果图,是不是自己想要的
在这里插入图片描述
1、在textarea中绑定bindinput事件。
2、通过var value = e.detail.value;获取textarea的值。
3、通过 var len = parseInt(value.length);获取textarea的长度。
wxml:

<view class="conts">
    <textarea class="areas" placeholder='留下点评,帮助更多人' minlength="{{min}}" maxlength="{{max}}" bindinput="inputs"></textarea>
    <text class="hint">{{texts}}</text>
    <text class="currentWordNumber">{{currentWordNumber|0}}/{{max}}</text>
</view>

wxss:

.conts{
  width:90%;
  height: auto;
  /* border: 1rpx solid red; */
  position:relative;
  padding-bottom:50rpx;
  margin:0 auto;

}
.areas{
  width:100%;
  height:152rpx;
  font-size: 30rpx;
  text-indent: 28rpx;
  border: 1rpx solid gainsboro;
  padding-top: 30rpx;
  margin: 0 auto;
  overflow: hidden;   
  position: relative; 
}
.currentWordNumber{
  font-size: 28rpx;
  color: gray;
  position: absolute;
  right:10rpx;
  bottom:10rpx;
}
.hint{
   font-size: 28rpx;
   position: absolute;
   left:20rpx;
   bottom:10rpx;
   color: #FF6600;
}

js:

Page({
  data: {
    texts: "",
    min: 5,//最少字数
    max:22, //最多字数 (根据自己需求改变) 
  },
  //字数限制  
  inputs: function (e) {
    // 获取输入框的内容
    var value = e.detail.value;
    // 获取输入框内容的长度
    var len = parseInt(value.length);
    //最少字数限制
    if (len < this.data.min){
      this.setData({
        texts: "加油,至少要输入5个字哦"
      })
    }else if (len >= this.data.min){
      this.setData({
        texts: " "
      })
    }
    //最多字数限制
    if (len > this.data.max) return;
    // 当输入框内容的长度大于最大长度限制(max)时,终止setData()的执行
    this.setData({
      currentWordNumber: len //当前字数  
    });
  }
})
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值