How can I help you?
Error messages in Vue Form validator component
25 May 20247 minutes to read
The FormValidator provides default error messages for all default validation rules.
It is tabulated as follows
| Rules | message |
|---|---|
required |
This field is required. |
email |
Please enter a valid email address. |
url |
Please enter a valid URL. |
date |
Please enter a valid date. |
dateIso |
Please enter a valid date ( ISO ). |
number |
Please enter a valid number. |
digit |
Please enter only digits. |
maxLength |
Please enter no more than {0} characters. |
minLength |
Please enter at least {0} characters. |
rangeLength |
Please enter a value between {0} and {1} characters long. |
range |
Please enter a value between {0} and {1}. |
max |
Please enter a value less than or equal to {0}. |
min |
Please enter a value greater than or equal to {0}. |
regex |
Please enter a correct value. |
Customizing Error Messages
The default error message for a rule can be customizable by defining it along with concern rule object as follows.
<template>
<div class="wrap">
<form id="form-element" class="form-horizontal">
<div class="form-group">
<div class="col-sm-3 control-label">Select Date</div>
<div class="col-sm-6">
<ejs-datepicker id="datepicker" name="date" class="form-control" placeholder="Select a date"></ejs-datepicker>
<div class="error-element"></div>
</div>
</div>
</form>
</div>
</template>
<script setup>
import { DatePickerComponent as EjsDatepicker } from "@syncfusion/ej2-vue-calendars";
import { FormValidator } from "@syncfusion/ej2-vue-inputs";
import {onMounted} from 'vue';
onMounted(() => {
var options = {
rules: {
date: { required: [true, "Select any value"] }
},
customPlacement: function (element, errorElement) {
document.querySelector(".error-element").appendChild(errorElement);
},
};
// defines FormValidator to validate the TimePicker
new FormValidator("#form-element", options);
});
</script>
<style>
@import "../node_modules/@syncfusion/ej2-vue-inputs/styles/material.css";
.wrap {
margin-top: 10px;
}
.error-element {
margin-top: 5px;
}
#list_event {
margin-top: 60px;
padding-left: 5px;
min-width: 200px;
}
#evt {
border: 1px solid #dcdcdc;
padding: 10px;
min-width: 10px;
}
.eventarea {
min-width: 250px;
}
#EventLog b {
color: #388e3c;
}
.evtbtn {
margin-top: 40px;
margin-left: 70px;
}
</style><template>
<div class="wrap">
<form id="form-element" class="form-horizontal">
<div class="form-group">
<div class="col-sm-3 control-label">Select Date</div>
<div class="col-sm-6">
<ejs-datepicker id="datepicker" name="date" class="form-control" placeholder="Select a date"></ejs-datepicker>
<div class="error-element"></div>
</div>
</div>
</form>
</div>
</template>
<script>
import { DatePickerComponent } from "@syncfusion/ej2-vue-calendars";
import { FormValidator } from "@syncfusion/ej2-vue-inputs";
export default {
name: "App",
components: {
"ejs-datepicker": DatePickerComponent
},
mounted() {
var options = {
rules: {
date: { required: [true, "Select any value"] }
},
customPlacement: function (element, errorElement) {
document.querySelector(".error-element").appendChild(errorElement);
},
};
// defines FormValidator to validate the TimePicker
new FormValidator("#form-element", options);
}
}
</script>
<style>
@import "../node_modules/@syncfusion/ej2-vue-inputs/styles/material.css";
.wrap {
margin-top: 10px;
}
.error-element {
margin-top: 5px;
}
#list_event {
margin-top: 60px;
padding-left: 5px;
min-width: 200px;
}
#evt {
border: 1px solid #dcdcdc;
padding: 10px;
min-width: 10px;
}
.eventarea {
min-width: 250px;
}
#EventLog b {
color: #388e3c;
}
.evtbtn {
margin-top: 40px;
margin-left: 70px;
}</style>