el-form:一行el-form-item内多个输入框的校验---【一个表单校验内的多个校验写法】_DcTbnk的博客-CSDN博客
HTML
<!-- 薪资范围 -->
<el-form-item label="薪资范围/Salary range" prop="Salary">
<el-input
v-model="ruleForm.minSalary"
placeholder="Minimum salary"
prop="minSalary"
class="inputWmin"
></el-input
><span>k</span>
<el-input
v-model="ruleForm.maxSalary"
placeholder="Maximum salary"
prop="maxSalary"
class="inputWmin"
></el-input
><span>k</span>
<!-- <span>只能输入整数,如:9</span> -->
</el-form-item>
JS
data() {
//判断是数字 且>0
function isNumberStr(str) {
var value = Number(str);
console.log(value, "aaa");
if (!isNaN(value) && value > 0) {
console.log("是数字并且>0");
return true;
} else {
console.log("不是数字后或<0");
return false;
}
}
//薪资自定义校验
var mustsalary = (rule, value, callback) => {
//最低薪资必填
if (!this.ruleForm.minSalary || !this.ruleForm.maxSalary) {
callback(new Error("Please fill in the salary"));
} //判断薪资格式
else if (
!isNumberStr(this.ruleForm.minSalary) ||
!isNumberStr(this.ruleForm.maxSalary)
) {
callback(new Error("Note the format!"));
} else {
callback();
}
};
添加校验
//校验
rules: {
//月薪范围
Salary: [
{
validator: mustsalary,
trigger: ["blur", "change"],
},
],
}