Skip to main content

Form Validation in Angular.js - Quick and Simple method On Submit click - HTML5 Validation vs AngularJs Validation

  • Form Validation Before AngularJs:
    •  Validation done in java script or mostly with JQuery Validation .
    • JQuery Validation uses Html 'Class' attribute of any Html element to implement Validations, like Class = " required  "
    • And there were many different libraries to do simple and fancy validation - highlights in JQuery. 
  • HTML5 Validation:
    • In HTML5 you can add many element types and attributes like below to a HTML element for validations.
    • InputTypes:
      • email, url, number, color , date, datetime, datetime-local, month, search, tel, time, week, range
      • Ex: 
        Date: <input type="date" name="date" required> 
      • this will show a text box with a dropdown arrow for 'DatePicker' provided by the HTML5 supported browsers.
    • Attributes:   
      • required, pattern, placeholder, max, min, size,
    •  All these validations and required fields are enforced by the HTML5 supported Browsers when you click on Submit button.
    • Submit button OnClick - event will show markers to the required fields and invalid fields.
    • novalidate  - attribute tells the browser not to validate the form. 
    • CSS Style for Validation: You can style your validation alerts like this, (basically accessing the attributes)
      • input:required:invalid{border: 1px solid red;} 
      • This will show red border on all the invalid  'input' elements. 
  • AngularJs:
  •  AngularJs uses tons of directives (AngularJs Keywords or Syntax) that are all over in HTML, JavaScripts and in CSS.
  • Usually it starts with an 'ng-'
  • Simple and Quick Validation for all 'required' elements in AngularJs On Submit button click:  
  • Add the following in relevant pages.
    • In the form element:  
    • ng-submit="submitForm(someform.$valid);" novalidate
    • ex: <form   id="testform" name="testform"   ng-submit="submitForm(estform.$valid);" novalidate>
    • In the controller:  
    • $scope.submitForm = function(formvalid) {
      if (!formvalid)
      { alert("Form is invalid. Pl. check the fields for error and resubmit");}
              else{
            alert("Form is valid. Proceeding to submit.");
              SaveFormData();    //add this function to submit your data.
              }
    • In the stylesheet : 
    • /*angular styles*/form.ng-submitted .ng-invalid {
          border:  1px solid #f44d3c;
      }
    • This will highlight a red border OnSubmit button click - all the elements contains 'required' attribute in them.

 

Comments

  1. Nice article. This article also explains how to show error message and show red color border for invalid input fields after submitting form using angularjs http://coding-issues.blogspot.in/2015/09/show-red-border-for-invalid-inputs-fields-on-form-submit-angularjs.html

    ReplyDelete

Post a Comment

Popular posts from this blog

Ohmni robot disassembly - Parts and structure inside Ohmni Telepresence Robot - Tear down

    The tablet, speakers were disconnected and removed in different video.    Ohmni robot disassembly - Parts and structure inside Ohmni Telepresence - Design - Mechonical and Electrical components .

Will Software engineer salary hit $1 million by year 2030

Are today’s Developers over loaded with too many tasks?! In 90s and till late 2000s there were many different job positions in an IT team that only do certain task. There was no Frontend engineers and backend engineers as most of the applications were thin clients in the browser side as the internet band width was very slow. There were jobs like Database Admins, Server Admins, Site Admins and so on to deal with one specific task.   Ever since the Startup culture took off again after the dotcom boom in the mid 2000s , in many cases the founder(s) had to do all tasks. Every single thing involved in the complete SDLC are done by one or two founders and hence there is more in their plate to get funding , business development etc.   And as the World internet infrastructure moved from dialup to DSL to Broadband, the browser apps became THICK CLIENTS. The corporate companies now started adopting Startup cultures into their companies IT strategy and thus Agile SDLC beca...

Agentic AI growth could make GenAI providers to charge $1000-$2000 per month - #Cathywood , here is how.

      #Cathywood predicts that as the #agenticgenai grows the #GenAI service providers like openai, gemini, Copilot, etc will be able to charge $1000 - $2000 per month to their business customers. And she adds, "this is going to happen". Why this is important: Remember #Cathywood made a monster call in 2018, predicting that Tesla would hit $4,000 in five years. And eventually Tesla hit Wood's price target, with shares closing at $816, or $4,080 on a split adjusted basis (Jan. 2021). How this could happen: #AgenticGenAi means , 1. Integrating a business service with GenAI providers like Gemini/ChatGPT as an agent and make available in the chat interface. 2. Less human interaction and more calls to the GENAI Models. Nothing totally new, its similar to 'Ok google play a song from spotify' 'Alexa, order 8 pack dove on amazon' For example, when booking a flight, instead of navigating a complex travel website, users can simply provide a text prompt...