特定の形式 (たとえば、IP v4 アドレス) を強制するng -patternがあります。
<input ng-model="ip"
ng-pattern="/(([2][0-5]{2}|[2][0-4]\d|[01]?\d{0,2})\.){3}([2][0-5]{2}|[2][0-4]\d|[01]?\d{0,2})/">
</input>
データは DB から取得されますが、要件が進化し、IPv6を保存する必要があるとしましょう。正規表現を変更することを期待していましたが、入力の内容が削除されました! このプランカーを確認してください (コンテンツの損失効果を確認できる場所): http://plnkr.co/edit/UPrU35
これは、入力を必須に切り替えるのと同じようなもので、単にユーザーが新しいルールに準拠する必要があるだけです。
質問:
ng-pattern を適用しながら ng-model バインディングを維持するにはどうすればよいですか? (フォーム入力を無効にしたいが、以前のコンテンツを失うという犠牲を払ってはならない)