textarea input 限制长度 实时监听

本是古典 何须时尚 2022-03-30 14:24 432阅读 0赞
  1. <div class="input">
  2. <textarea @input="descArea" name="" id="" cols="30" rows="10" v-model="textareaDesc" placeholder="请填写备注信息,如:需带个人简历、身份说明"></textarea>
  3. <p>{
  4. {zero}}/{
  5. {max}}</p>
  6. </div>
  7. <script>
  8. export default {
  9. name: 'invitation',
  10. data() {
  11. return {
  12. list: ['待查阅', '已查阅', '已购买', '已邀约', '不合适'],
  13. textareaDesc: '',
  14. zero: '0',
  15. max: '400'
  16. };
  17. },
  18. methods: {
  19. descArea: function () {
  20. console.log(this.textareaDesc.length);
  21. console.log(this.textareaDesc);
  22. this.zero = this.textareaDesc.length;
  23. if (this.textareaDesc.length > 400) {
  24. this.zero = 400;
  25. this.textareaDesc = this.textareaDesc.slice(0, 401);
  26. }
  27. }
  28. }
  29. };
  30. </script>
  31. ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hlcm9fcm9uZw_size_16_color_FFFFFF_t_70][] ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hlcm9fcm9uZw_size_16_color_FFFFFF_t_70 1][]

话不多说直接上图,首先,监听 textarea 的内容变化,我们可以用input方法,因为我们是vue项目,所以 textarea 的vule 我们换成 v-model ,这样方便数据交互。

然后我们限制长度(限制字数,我这里是400),思路就是,获得输入的内容的长度,即 this.textareaDesc.length ,判断该长度是否超过400 ,如果超过400,我们就截取0-400之间的,超过400的不予显示,要显示选定的元素 ,就用slice(start,end),这里要注意,start是包含的,end则是不包含的,就相当于,你要是要截取3个字符,那就得 slice(0,4)。

以上就是限制长度啦,本文方法对 input 和 textarea 都适用

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hlcm9fcm9uZw_size_16_color_FFFFFF_t_70 2

发表评论

表情:
评论列表 (有 0 条评论,432人围观)

还没有评论,来说两句吧...

相关阅读