0

init (ページ読み込み) で表示するのではなく、ユーザーが無効なものを入力した場合にのみ無効なスタイルを表示するにはどうすればよいですか?

angularJS フォーム入力は、初期化時にすべて赤い無効な CSS スタイルを持ちます。ここでデモを行います:

http://plnkr.co/edit/iDcG8J?p=preview

私が欲しいのは、初期化時に無効な赤いスタイルを表示するのではなく、ユーザーが無効なものを入力したときにのみ赤くなることです。

初期化するとき、入力がすべて通常の黒スタイルであることを願っています。

4

1 に答える 1

1

とを使用ng-requiredng-changeてそれを行うことができます: http://plnkr.co/edit/LxJGK3?p=preview

テンプレートでは:

<input  type="text" 
        data-ng-minlength=3 
        data-ng-model="form.min" 
        ng-required="minTouched" 
        ng-change="minChanged" />

コントローラーで:

function ($scope) {
  $scope.minTouched = false;

  // ...

  $scope.minChanged = function () {
    $scope.minTouched = true;
  }
}
于 2013-11-09T10:54:54.343 に答える