0

ユーザーからの入力を取得するために text-angular を使用しました。以下のコードは入力を検証しません

    <div text-angular ng-pattern="/^[a-zA-Z0-9\-\s]+$/" name="description" ng-minlength="100" ta-min-text="100" required>
     </div>
  <p ng-show="jform.description.$invalid && !jform.description.$pristine && !jform.description.$error.pattern" class="help-block">Invalid input</p>

一方、ng-pattern動作します

 <input type="text" ng-pattern="/^[a-zA-Z0-9\-\s]+$/" name="description">
  <p ng-show="jform.description.$invalid && !jform.description.$pristine && !jform.description.$error.pattern" class="help-block">Invalid input</p>

text-angularに対して異なる属性を持っていますng-patternか?

どんな助けでも大歓迎です。

4

1 に答える 1

0

「ngPattern はパターンバリデーターを ngModel に追加します」( https://docs.angularjs.org/api/ng/directive/ngPattern )、
「ngModel ディレクティブは入力、選択、テキストエリアをバインドします」( https://docs.angularjs. org/api/ng/directive/ngModel )。

問題は、入力、選択、テキストエリアではない要素にパターンバリデーターを追加しようとしていることにあると思います。text-area ディレクティブは入力要素を作成し、それをその属性にある ng-model にバインドしますが、ng-pattern はバインドしません。

于 2016-01-15T08:25:58.427 に答える