Label & Input
The Ignite UI for Angular Input and Label directives are used to create single-line or multi-line text elements. They help to cover common scenarios when dealing with form inputs.
Label & Input Demo
Usage
The default styling of the Label and Input directives follows the text fields specification in the Material Design guidelines.
Note
To use igxInput
and igxLabel
, you have to wrap them in an <igx-input-group>
container.
To get started with the Ignite UI for Angular Label & Input, let's first import the IgxInputGroupModule
in our app.module.ts file:
// app.module.ts
...
import { IgxInputGroupModule } from 'igniteui-angular';
@NgModule({
...
imports: [..., IgxInputGroupModule],
...
})
export class AppModule {}
Label & Input
HTML labels and inputs are the core building blocks of the HTML forms. Here is how you can use the igxLabel
and igxInput
directives:
<igx-input-group>
<input igxInput name="fullName" type="text" />
<label igxLabel for="fullName">Full Name</label>
</igx-input-group>
And the result is:
The igxInput
directive could be applied to <input>
and <textarea>
HTML elements. We support both single-line and multi-line text fields.
Validation
Ignite UI for Angular Input directive provides a Material-based styling when you have validation. Let's add required
attribute to our input:
<igx-input-group>
<input igxInput name="fullName" type="text" required="required" />
<label igxLabel for="fullName">Full Name</label>
</igx-input-group>
In the demonstration of the code below you can see we receive an asterisk next to the label and the input turns green/red when we write in it depending on whether the validation passes/fails.
Data Binding
Ignite UI for Angular Input supports one-way and two-way data-binding. Let's add a two-way data-binding to our input. Here is the code in our component:
public user = {
fullName: ""
};
and in our markup:
<igx-input-group>
<input igxInput name="fullName" type="text" [(ngModel)]="user.fullName" required="required" />
<label igxLabel for="fullName">Full Name</label>
</igx-input-group>
Input Group
You can read about the Input Group component in a separate topic here.
API References
Additional Resources
Related topics:
Our community is active and always welcoming to new ideas.