js vue input textarea 限制每行输入字数,限制输入行数
<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-inpu
·
<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");
}
}
更多推荐
已为社区贡献2条内容
所有评论(0)