js vue input textarea 限制每行输入字数,限制输入行数

本文介绍了一种使用正则表达式进行多行文本输入验证的方法,确保每行字符数量符合预设限制,并通过实例展示了如何在前端实现这一功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<el-input type="textarea"  v-model="xxx" :rows="3" maxlength="33" :show-word-limit="true" @input="((val,name,rowNum,colNum)=>{handleTextarea(val,'xxx',10,3)})" placeholder="请输入xxx"></el-input>


/**
 * @description    校验多行文本验证
 * @param val      输入值
 * @param name     字段名称
 * @param rowNum   每行字符个数
 * @param colNum   列数
 */
handleTextarea(val,name,rowNum,colNum){
    console.log(val)
    console.log(name)
    //正则匹配每行字数
    let reg=new RegExp("(.{"+rowNum+"})","g");
    //先除回车换行符的字符串,不去除影响字符个数计算
    let result = val.replace(/[\r\n]/g,'').replace(reg, "$1\n");
    //获取colNum行
    let arr = result.split("\n").slice(0,colNum);
    if(name == "xxx"){
      this.xxx = arr.join("\n");
    }
}

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值