This form's "valid state" will not be consider "true", as long as the required input field is empty:
<input name="myInput" ng-model="myInput" required>
<p>The forms's valid state is:</p>
Definition and Usage
AngularJS modifies the default behavior of the
Forms inside an AngularJS application are given certain properties. These properties describes the current state of the form.
Forms have the following states:
$pristineNo fields have been modified yet
$dirtyOne or more have been modified
$invalidThe form content is not valid
$validThe form content is valid
$submittedThe form is submitted
The value of each state represents a Boolean value, and is either
Forms in AngularJS prevents the default action, which is submitting the form to the server, if the action attribute is not specified.
Forms are being referred to by using the value of the name attribute.
Forms inside an AngularJS application are given certain classes. These classes can be used to style forms according to their state.
The following classes are added:
ng-pristineNo fields has not been modified yet
ng-dirtyOne or more fields has been modified
ng-validThe form content is valid
ng-invalidThe form content is not valid
ng-valid-keyOne key for each validation. Example:
ng-valid-required, useful when there are more than one thing that must be validated
The classes are removed if the value they represent is
Apply styles for unmodified (pristine) forms, and for modified forms: