นี่คือตัวอย่างการใช้ ng-messages (มีในเชิงมุม 1.3) และคำสั่งที่กำหนดเอง
ข้อความตรวจสอบความถูกต้องจะแสดงเป็นภาพเบลอในครั้งแรกที่ผู้ใช้ออกจากช่องป้อนข้อมูล แต่เมื่อเขาแก้ไขค่าข้อความตรวจสอบความถูกต้องจะถูกลบออกทันที (ไม่เบลออีกต่อไป)
JavaScript
myApp.directive("validateOnBlur", [function() {
var ddo = {
restrict: "A",
require: "ngModel",
scope: {},
link: function(scope, element, attrs, modelCtrl) {
element.on('blur', function () {
modelCtrl.$showValidationMessage = modelCtrl.$dirty;
scope.$apply();
});
}
};
return ddo;
}]);
HTML
<form name="person">
<input type="text" ng-model="item.firstName" name="firstName"
ng-minlength="3" ng-maxlength="20" validate-on-blur required />
<div ng-show="person.firstName.$showValidationMessage" ng-messages="person.firstName.$error">
<span ng-message="required">name is required</span>
<span ng-message="minlength">name is too short</span>
<span ng-message="maxlength">name is too long</span>
</div>
</form>
ปล. อย่าลืมดาวน์โหลดและรวม ngMessages ไว้ในโมดูลของคุณ:
var myApp = angular.module('myApp', ['ngMessages']);