入力の長さが11または14の場合にのみ検証する入力があります。 ディレクティブを作成せずにこれを達成する方法はありますか?
(11) 000.000.000-00
(とき14) 00.000.000/0000:AngularJsは複数の長さの入力の長さを検証します
私はこのような入力をフォーマットマスクを使用しています:
もう一つがあります-00
パターンは '。'を無視する必要があります。 「/」
ありがとうございます。
入力の長さが11または14の場合にのみ検証する入力があります。 ディレクティブを作成せずにこれを達成する方法はありますか?
(11) 000.000.000-00
(とき14) 00.000.000/0000:AngularJsは複数の長さの入力の長さを検証します
私はこのような入力をフォーマットマスクを使用しています:
もう一つがあります-00
パターンは '。'を無視する必要があります。 「/」
ありがとうございます。
てみ使用ng-pattern
/^([0-9]{11}|[0-9]{14})$/
// Code goes here
var app = angular.module('app', []);
app.controller('FirstCtrl', function($scope) {
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="FirstCtrl as vm">
<form name="form">
<input type="text" name="name" ng-model="name" ng-pattern="/^([0-9]{11}|[0-9]{14})$/">
<span ng-show="form.name.$error.pattern">Not valid!</span>
</form>
</div>
これは助けになりましたが、調整する必要がありました。 最初に、ng-patternには 'ng-pattern'の代わりに' pattern'属性を使用しました。表現。 2つ目は、入力した2つのマスクに一致する正規表現を更新しました。これは、CNPJとCPFのIDのブラジルで役立ちます。 'パターン=" ^([0-9] {3} \。[0-9] {3} \。[0-9] {3} \ - [0-9] {2} [0-9] {3} \/[0-9] {4} \ - [0-9] {2})$ " – tfuelber
あなたの中に、これはあなたのコードスニペットを共有することができ
ng-pattern="/^[0-9]{1,16}$/" ng-maxlength="16"
これは、11または14以外の長さの項目を受け入れ、/とを処理しないため、質問の詳細には答えません。文字。 –
にタグを付けてみてください?これは可能ですが、コードの記述方法を知っていなければなりません。 – Vish