私は検証で入力ディレクティブ要素を作成しようとしています。 このディレクティブでエラーステータスを管理したいと思います。エラーメッセージがあるフォームエレメントディレクティブは、AngularJS
3つのファイル
- Index.htmlとあります
- textValid.jsこのディレクティブを使用しています:ディレクティブのコードが含まれています
- textValid.html:私が作成したディレクティブのテンプレート
が含まれていますが、この指示文
textValid.js
App.directive("textValid", function() {
return {
restrict: "E",
templateUrl: "tpl/textValid.html",
require: "?ngModel",
scope: {
name: "@",
element: "=",
model: "="
}
};
});
index.htmlを
<form name="edit_form_ctrl.contract_edit_form" action="#" novalidate >
<div class="row">
<text-valid name="ncontract"model="edit_form_ctrl.contract.ncontract"
element="edit_form_ctrl.contract_edit_form.ncontract">
</text-valid>
</div>
</form>
とテンプレートtextValid.html
<input type="text" name="name" ng-model="model" class="form-control" ng-required="true" value="{{model}}" />
<div>pristine: {{element.$pristine}}</div> <!--is always undefined-->
<div>Invalid: {{element.$error}}</div> <!--is always undefined-->
<span class="color-red" ng-if="element.$error.required &&!element.$pristine">
{{curLang.field_mandatory}}
</span>
私は$エラーをチェックするための入力制御を取得しようとしていると$手付かずの値しかし、私はそれを達成することはできません。
私はすべてのドキュメントと本も読んでいますが、結果はあります。
誰かがそれを試みますか?
事前
指示内のリンク機能を意味しますか?私はtextValid.jsリンクを追加しようとしました:function($ scope、element、attr、ctrl)しかし$ scope.form [name]はエラーを返します 'cosフォームはnullです。 –
ああ、text-validはスコープを分離しています。私はこれを考慮して私の答えを編集しました。 – plong0
ありがとう!それは働く....ちょうど質問:フォームの前にこれらの2つの '^^'を意味するか? –