2015-05-23 23 views
6

Benim sorunum - herkes için erişilebilir bir web sayfası var. Kayıtsız kullanıcı gelirse ve formu gönderirken kaydederse, giriş yapmak isteyen bir giriş modalı vardır.force asyncvalidators

Kullanıcı yeni ise kayıt olur ve tekrar gönder düğmesine basın. Kullanıcı yeni değilse, giriş yapıp tekrar gönder düğmesine basın. sayfa form adı zaman uyumsuz doğrulayıcı ile doğrulanıyor kayıtlı kullanıcı ziyaretleri ise

:

app.compileProvider.directive('nameAvailable', ['$q', '$http', 'service', function ($q, $http, service) { 
     return { 
      restrict: 'AE', 
      require: 'ngModel', 
      link: function ($scope, elem, attrs, ngModel) { 
       ngModel.$asyncValidators.queryName = function (queryName) { 
        --logic 
       } 
      } 
     } 
    }]); 

Ve kayıtlı kullanıcı aynı adla kaydedilmiş bu formu varsa bunu doldurur eğer o zaman başarısız olur ve ardından giriş

Soru: Kullanıcı oturum açtıktan sonra bu alanda doğrulamayı nasıl zorlayabilirim?

Bulduğum bir şey, ngModelController'ı kullanmak ve validate() yöntemini kullanmak, ancak denetleyiciye nereden erişeceğimi bulmak mı?

Teşekkür ederiz!

+0

Formun gönderilip gönderilmediğini kontrol etmek ve daha sonra gereksinim duyduğunuz mantığı yapmak için 'form. $ Submit' kullanmayı denediniz mi? – Cyberdelphos

cevap

4

Eşik değer verisini açısal şekilde doğrulamak için örnekle plunker'u oluşturdum.

Güncelleştirmelerle birlikte plunker güncelleştirildi.

+0

Bu benim sahip olduğumla aynı - Düğmeye sahip giriş alanının yakınında, bir kez daha zaman uyumsuzluğunu çalıştıran buna ihtiyacım var. – sandris

+0

Lütfen güncellenmiş yanıtı kontrol edin. – Mikalai