textarea
Dyrektywa AngularJS
Przykład
Obszar tekstowy z wiązaniem danych:
<textarea ng-model="myTextarea"></textarea>
<p>The value of the textarea field is:</p>
<h1>{{myTextarea}}</h1>
Definicja i użycie
AngularJS modyfikuje domyślne zachowanie <textarea>
elementów, ale tylko wtedy, gdy ng-model
atrybut jest obecny.
Zapewniają wiązanie danych, co oznacza, że są częścią modelu AngularJS i można się do nich odwoływać i aktualizować zarówno w funkcjach AngularJS, jak iw DOM.
Zapewniają walidację. Przykład: <textarea>
element z required
atrybutem ma $valid
ustawiony stan
false
tak długo, jak jest pusty.
Zapewniają również kontrolę państwa. AngularJS przechowuje aktualny stan wszystkich elementów textarea.
Pola tekstowe mają następujące stany:
$untouched
Pole nie zostało jeszcze dotknięte$touched
Pole zostało dotknięte$pristine
Pole nie zostało jeszcze zmodyfikowane$dirty
Pole zostało zmodyfikowane$invalid
Zawartość pola jest nieprawidłowa$valid
Zawartość pola jest prawidłowa
Wartość każdego stanu reprezentuje wartość logiczną i jest jedną true
z false
.
Składnia
<textarea ng-model="name"></textarea>
Do elementów Textarea odwołuje się wartość ng-model
atrybutu.
Klasy CSS
<textarea>
elementy wewnątrz aplikacji AngularJS mają określone klasy . Te klasy mogą służyć do stylizowania elementów textarea zgodnie z ich stanem.
Dodaje się następujące klasy:
ng-untouched
Pole nie zostało jeszcze dotknięteng-touched
Pole zostało dotknięteng-pristine
Pole nie zostało jeszcze zmodyfikowaneng-dirty
Pole zostało zmodyfikowaneng-valid
Zawartość pola jest prawidłowang-invalid
Zawartość pola jest nieprawidłowang-valid-key
Jeden klucz do każdej walidacji. Przykład:ng-valid-required
, przydatne, gdy istnieje więcej niż jedna rzecz, która musi zostać zweryfikowanang-invalid-key
Przykład:ng-invalid-required
Klasy są usuwane, jeśli reprezentowana przez nie wartość to false
.
Przykład
Zastosuj style dla prawidłowych i nieprawidłowych elementów textarea, używając standardowego CSS:
<style>
textarea.ng-invalid {
background-color: pink;
}
textarea.ng-valid {
background-color: lightgreen;
}
</style>