输入框限定100个汉字或200字符
el-form-item(label="消息内容", prop="content")
el-input( v-model="addPForm.content", :autosize="{ minRows: 3, maxRows: 4}", type="textarea",placeholder="100汉字以内,支持汉字、特殊字符、数字", :disabled="isonCopyClick")
const wordLimit = (rule, value, callback) => {
const mailzh = /^[\u4E00-\u9FA5]{0,}$/;
let num = 0;
if (!value) {
return callback(new Error('请输入消息内容'));
}
for (let i = 0; i < value.length; i++) {
// 使用正则表达式,判断字符是否为汉字编码
const matches = mailzh.test(value[i]);
if (matches) {
// 如果是汉字
num++; // 则累加
}
}
setTimeout(() => {
if (num + (value.length - num) / 2 <= 100) {
callback();
} else {
callback(new Error('请输入100汉字或者200字符以内消息内容'));
}
}, 100);
};
rules: {
content: [{ validator: wordLimit, trigger: 'blur' }],
},