Skip to main content

LWC Validation

Requirement :



Create a LWC which we will take information like First Name(Text) , Last Name(Text) and Phone(Tel) where these are mandatory fields. Give one button Named ‘Validate’ in the end of the form .On click of button it would show an error message if the mandatory fields are empty or the
phone is not in correct format.

Or in other words

Check validation

cmpValidateFields.html

<template>
    <lightning-card title="Check Validation" icon-name="custom:custom63">
        <lightning-input 
            label="First name" 
            class="validValue inputFirstName"                          
            minlength="3" 
            field-level-help="This First Name is required"                      
            message-when-bad-input="Your entry must be at least 3 characters."                     
            placeholder="First name" 
            message-when-value-missing="Please enter your First Name"                     
            required>
        </lightning-input>
        <br>
        <lightning-input 
            label="Last name" 
            class="validValue inputLastName"                           
            minlength="3" 
            field-level-help="This Last Name is required"                      
            message-when-bad-input="Your entry must be at least 3 characters."                     
            placeholder="Last name" 
            message-when-value-missing="Please enter your Last Name"                     
            required>
        </lightning-input>
        <br>
        <lightning-input
            label="Phone"
            class="validValue inputPhone"                       
            placeholder="0412 345 678"
            pattern="^(\s*\d\s*){10}$" 
            maxlength="12" 
            minlength="10"
            field-level-help="This Phone is required"
            message-when-bad-input="Phone number is not valid"           
            message-when-value-missing="Please enter your Phone Number"
            required>
        </lightning-input>
        <br>
        <center>
            <lightning-button                         
                variant="brand"
                label="Validate"                     
                onclick={handleValidation}>
            </lightning-button>
        </center>
    </lightning-card>     
</template>

cmpValidateFields.js

import { LightningElementtrack } from 'lwc';
export default class cmpValidateFields extends LightningElement {
    handleValidation() {
        const allValid = [...this.template.querySelectorAll('.validValue')]
            .reduce((validSoFarinputCmp=> {
                        inputCmp.reportValidity();
                        return validSoFar && inputCmp.checkValidity();
            }, true);        
    }     
}

cmpValidateFields.js-meta.xml

<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
    <apiVersion>48.0</apiVersion>
    <isExposed>true</isExposed>
    <targets>
        <target>lightning__AppPage</target>
        <target>lightning__RecordPage</target>
        <target>lightning__HomePage</target>
        <target>lightning__Tab</target>
      </targets>
</LightningComponentBundle>

Output :



Happy Learning !!

Comments

Popular posts from this blog

LWC Show Records In Table

Requirement : ‹ › Create a LWC component which will show the most recently created 10 Opportunity from the org and show them in table having Name , Close Date , Stage Name , Type and Create . or in other words Show Opportunity data in table format. cmpOpportunityRecords.html < template >      < lightning-card   title = "Opportunity Records"   icon-name = "standard:opportunity" >                  < lightning-datatable                            data = {data}                columns = {columns}                key-field = "Id" >          </ lightning-...

LWC Development Environment

Requirement : ‹ › Setup LWC Development Environment  1. VS (Visual Stdio) Code 2. Salesforce CLI Download and install the latest version of  Visual Studio Code . Open the Visual Studio Code and add extensions by clicking on the extensions icon present on the left side of the VS code editor. Search for  Salesforce Extension Pack  and install the extension. After that install  Lightning Web Components extension. Once you done with installing the above two extensions Re-launch the VS code editor. Now it’s time to check that our environment is ready for creating Lightning Web Components by pressing  Command + Shift + P  on  macOS or Ctrl + Shift + P  on Windows and type  sfdx . Hola..!! you are now ready to create your Lightning Web Components. Creating SFDX Project First create a folder somewhere on your machine and name it  trailblazer  or anything of your choice. Navigate to that folder from VS code ...

LWC Component Only

Requirement : ‹ › Create a LWC having two input fields which will take two number as input and show result, addition happen on button click. cmpAddition.html < template >      < lightning-card   title = "Addition"   icon-name = "custom:custom62" >                   < p   class = "slds-p-horizontal_small" >              < lightning-input                    value = {firstNumber}                    name = "fnumber"                    label = "First Number"             ...