I want to Validate Max-limit in system configuration field. i have used some of classes for other validation but did not found any class for max or min text limit for system configuration filed.
2 Answers
You can use this code for better output with validation :
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd"> <system> <tab id="tabID" translate="label" sortOrder="10"> <label>Tab Name</label> </tab> <section id="sectionID" translate="label" type="text" sortOrder="300" showInDefault="1" showInWebsite="1" showInStore="1"> <label>General Configuration</label> <tab>Section</tab> <group id="groupID" translate="label" type="text" sortOrder="1" showInDefault="1" showInWebsite="1" showInStore="1"> <field id="fieldID" translate="label comment" sortOrder="0" type="text" showInDefault="1" showInWebsite="0" showInStore="0"> <label>Maximum Number of Items to Display</label> <validate>required-entry validate-digits validate-not-negative-number validate-length minimum-length-7 maximum-length-20 </validate> </field> </group> </section> </system> - required-entry : For required field
- validate-digits : For use numbers only in this field.
- validate-not-negative-number : For enter a number 0 or greater.
- validate-length : For a specific valid length.
- minimum-length-7 maximum-length-20 : Min length is 7 and Max length is 20.
Thank you for asking about this validation. Use this validation for your query:
<validate>validate-length maximum-length-50</validate> For Example:
<group id="customer_service" translate="label" type="text" sortOrder="35" showInDefault="1" showInWebsite="1" showInStore="1"> <label>Customer Service</label> <field id="number" translate="label" type="text" sortOrder="9" showInDefault="1" showInWebsite="1" showInStore="1"> <label>Enter Contact Number</label> <comment>Please enter an internationalized version of the phone number. For example +91 XXX XXXXXXX</comment> <validate>validate-length maximum-length-22</validate> </field> </group> 