input
Direttiva AngularJS
Esempio
Un campo di input con associazione dati:
<input ng-model="myInput">
<p>The value of the input field is:</p>
<h1>{{myInput}}</h1>
Definizione e utilizzo
AngularJS modifica il comportamento predefinito degli <input>
elementi, ma solo se l' ng-model
attributo è presente.
Forniscono l'associazione dei dati, il che significa che fanno parte del modello AngularJS e possono essere referenziati e aggiornati, sia nelle funzioni AngularJS che nel DOM.
Forniscono la convalida. Esempio: un <input>
elemento con un required
attributo, ha lo $valid
stato impostato su
false
finché è vuoto.
Forniscono anche il controllo statale. AngularJS mantiene lo stato corrente di tutti gli elementi di input.
I campi di input hanno i seguenti stati:
$untouched
Il campo non è stato ancora toccato$touched
Il campo è stato toccato$pristine
Il campo non è stato ancora modificato$dirty
Il campo è stato modificato$invalid
Il contenuto del campo non è valido$valid
Il contenuto del campo è valido
Il valore di ogni stato rappresenta un valore booleano ed è o true
o false
.
Sintassi
<input ng-model="name">
Gli elementi di input vengono indicati utilizzando il valore ng-model
dell'attributo.
Classi CSS
<input>
agli elementi all'interno di un'applicazione AngularJS vengono assegnate determinate classi . Queste classi possono essere utilizzate per definire lo stile degli elementi di input in base al loro stato.
Si aggiungono le seguenti classi:
ng-untouched
Il campo non è stato ancora toccatong-touched
Il campo è stato toccatong-pristine
Il campo non è stato ancora modificatong-dirty
Il campo è stato modificatong-valid
Il contenuto del campo è validong-invalid
Il contenuto del campo non è validong-valid-key
Una chiave per ogni convalida. Esempio:ng-valid-required
, utile quando ci sono più cose che devono essere convalidateng-invalid-key
Esempio:ng-invalid-required
Le classi vengono rimosse se il valore che rappresentano è false
.
Esempio
Applicare stili per elementi di input validi e non validi, utilizzando CSS standard:
<style>
input.ng-invalid {
background-color: pink;
}
input.ng-valid {
background-color: lightgreen;
}
</style>