私はAngularJSを使用しています。ユーザーにいくつかの検証とフィードバックを適用しようとしています。物事のセットアップ方法は少し奇妙であるため、 のようなものはng-required
、それらが適用されるテキストエリアに影響を与えないようです (実際には 内にないためと推測します<form>
)。
border-color
フィールドの 1 つが入力されていないときに、クラスを適用して を赤に変更しようとしています。送信機能内で、フラグをチェックしています。true に検証されない場合は、else
ブロックでこれを実行します。
<div ng-repeat="keyWordForm in keyWordForm" class="fadeInBottom">
{{keyWordForm.snippet}} <br>
{{$scope.keywords}}
<textarea style="{{keyWordForm.style}}" ng-required="'true'" class="{{keyWordForm.ourClass}} {{errorRequired}}" name="keyWordFormTextArea" ng-model="keyWordForm.data" ng-change="columnCount()"></textarea>
</div>
これは、私のhtml内でerrorLine
使用するクラスを適用します:{{errorRequired}}
<textarea style="{{keyWordForm.style}}" class="{{keyWordForm.ourClass}} {{errorRequired}}" name="keyWordFormTextArea" ng-model="keyWordForm.data" ng-change="columnCount()"></textarea>
ただし、これにより、CSS がテキストエリアだけでなく、すべてのテキストエリアに適用され$pristine
ます。まだ入力されていないフィールドだけに CSS を適用するにはどうすればよいですか?
私は行に沿って何かを使用しようとしてきました: keywordFormTextArea.$pristine
、しかし、これを使用して目的の効果を達成する有効な方法が見つかりません。
望ましい効果: