0
我已經做了一個指令,使用表單驗證,如果移動不存在服務,但它顯示每10位數驗證否是否存在或不。請告訴我我在哪裏出錯 這是我的代碼。無法通過正確的值形式驗證
HTML
<div class="col-xs-8">
<md-input-container>
<md-icon md-svg-icon="assets/images/device.svg"></md-icon>
<input type="number" placeholder="Enter user mobile no" name="mobile" id="mobile" ng-model="mobile" required minlength="10" ng-pattern="/^[789]\d{9}$/" phone-number-validator>
<div ng-messages="myForm.mobile.$error">
<div ng-message="required">Registered mobile no.</div>
<div ng-message="phoneNumber">The mobile No entered has already been registered</div>
<div ng-message="test">too short</div>
</div>
</md-input-container>
</div>
這裏是我的指令
angular.module('shoppingPad').directive('phoneNumberValidator',phoneNumberValidator)
function phoneNumberValidator($q,loginServices){
//var deferred=$q.defer();
return{
restrict:'EA',
require:'ngModel',
link:function($scope,element,attrs,ngModel){
ngModel.$asyncValidators.phoneNumber=function(modelValue , viewValue) {
var mobile= (modelValue).toString();
console.log(mobile);
console.log("abc");
if(mobile.length == 10){
return $q(function(resolve,reject){
if(mobile==loginServices.getMobileNo.mobile1){
resolve();
}
else reject();
});
}
}
}
,這裏是我的服務從即時通訊傳遞數據
this.getMobileNo=function(){
var mobile={
mobile1:'8898246388',
mobile2:'8898302454',
mobile3:'8898454302'
}
}
()。它表示無法讀取未定義的屬性'mobile1' – Anurag
也改變你的功能。一個工作版本在這裏:https://plnkr.co/edit/e7Dwyg?p=info –
哪些功能我沒有得到完全正確的,因爲我看到相同的指令代碼在plunker也 – Anurag