我有一個文本框角色,我想檢查角色是否已經存在於數據庫或不在服務器端爲我已經創建了一個指令uniqueRole現在我想通過文本框值該指令如何做到這一點。如何將模型值傳遞給自定義指令?
**HTML**
<input type="text" class="role-textbox" id="rolename" name="rolename" required ng-model="roledetails.name" unique-role send-value="roledetails.name" placeholder="{{::'placeholder.addRole.name'|translate}}">
**Controller**
'use strict';
define([
'angular',
'./module',
], function(angular, directives) {
directives.directive('uniqueRole', function($timeout, $q, restClientTemplate) {
return {
restrict: 'AE',
require: 'ngModel',
scope:{
sendValue: '='
},
link: function(scope, elm, attr, model) {
model.$asyncValidators.usernameExists = function(roledata) {
var defer = $q.defer();
console.log("gng to call controller");
restClientTemplate.execute({
method: 'POST',
url: 'json/check/role',
data: roledata
}).then(function(response) {
roledata = response.results;
defer.resolve(roledata);
}, function(error) {
defer.reject(error);
});
$timeout(function() {
model.$setValidity('usernameExists', false);
defer.resolve;
}, 1000);
return defer.promise;
};
}
}
});
});
我還是編輯的代碼不工作仍然有價值,因爲undefined請幫助 –