Magento2 Add Validation in System Configuration
Today we talk about magento 2 add validation system configuration. In this tutorial we focus on how to add validation in system configuration like required entry, number validation email validation and other validation too. There are already tutorial available about Magento 2 create retrieve system configuration. You can follow that for creating field in system configuration. In this tutorial our focus is how to add validation in system configuration. Now let’s start with our example.
Single Validation class in system configuration
You can add single validation class with
node.
<field id="title" translate="label" type="text" sortOrder="5" showInDefault="1" showInWebsite="1" showInStore="1">
<label>Title</label>
<validate>required-entry</validate>
</field>
<label>Title</label>
<validate>required-entry</validate>
</field>
Multiple Validation class in system configuration
You can add single validation class with
Adding the space between two classes.
<field id="title" translate="label" type="text" sortOrder="5" showInDefault="1" showInWebsite="1" showInStore="1">
<label>Title</label>
<validate>required-entry validate-digits</validate>
</field>
<label>Title</label>
<validate>required-entry validate-digits</validate>
</field>
Available Validation Class
Here is list of available validation classes.
'required-entry' => 'This is a required field.'
'validate-number' => 'Please enter a valid number in this field.'
'validate-email' => 'Please enter a valid email address. For example
johndoe@domain.com.'
'validate-date' => 'Please enter a valid date.'
'validate-select' => 'Please select an option.'
'validate-no-html-tags' => 'HTML tags are not allowed'
'validate-digits' => 'Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.'
'validate-url' => 'Please enter a valid URL. Protocol is required (http://, https:// or ftp://)'
'validate-not-negative-number' => 'Please enter a number 0 or greater in this field.'
'validate-zero-or-greater' => 'Please enter a number 0 or greater in this field.'
'validate-state' => 'Please select State/Province.'
'validate-cc-number' => 'Please enter a valid credit card number.'
'validate-data' => 'Please use only letters (a-z or A-Z), numbers (0-9) or underscore(_) in this field, first character should be a letter.'
'validate-number' => 'Please enter a valid number in this field.'
'validate-email' => 'Please enter a valid email address. For example
johndoe@domain.com.'
'validate-date' => 'Please enter a valid date.'
'validate-select' => 'Please select an option.'
'validate-no-html-tags' => 'HTML tags are not allowed'
'validate-digits' => 'Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.'
'validate-url' => 'Please enter a valid URL. Protocol is required (http://, https:// or ftp://)'
'validate-not-negative-number' => 'Please enter a number 0 or greater in this field.'
'validate-zero-or-greater' => 'Please enter a number 0 or greater in this field.'
'validate-state' => 'Please select State/Province.'
'validate-cc-number' => 'Please enter a valid credit card number.'
'validate-data' => 'Please use only letters (a-z or A-Z), numbers (0-9) or underscore(_) in this field, first character should be a letter.'