ng-model filtre bir giriş
Metin girişi ve kullanıcı boşluk kullanmak için izin istemiyorum, ve her şey yazılmış küçük harfe dönüştürülecektir.
Ng-model filtre eg kullanmak için izin değilim.
ng-model='tags | lowercase | no_spaces'
Kendi talimatımı yaratma ama $parsers
ve 5 *işlevleri giriş güncelleme vermedi ekleme, ng-model
vardı sadece diğer elemanları baktım.
Nasıl şu anda yazmakta olduğum bir giriş değiştirebilir miyim?
Aslında 'etiketler' burada StackOverflow. üzerinde gibi çalışır bu özelliği oluşturmak için çalışıyorum
CEVAP
AngularJS giriş ve ngModel
direcive niyeti olduğuna inanıyorumgeçersiz giriş hiç model biter. Model her zaman geçerli olmalıdır. Geçersiz bir model olması ile sorun ve (uygun olmayan) eylemleri geçersiz modeline göre ateş alması gözlemcileri olabilir.
Gözüme uygun çözümü burada $parsers
boru hattı takın ve geçersiz giriş modeli haline gelmez emin olmaktır. Emin değilim nasıl denedin yaklaşım şeyler veya tam olarak ne olmadı seninle $parsers
ama burada basit bir Direktif bu sorunu çözer senin sorunun (ya da en azından benim anladığım sorun):
app.directive('customValidation', function(){
return {
require: 'ngModel',
link: function(scope, element, attrs, modelCtrl) {
modelCtrl.$parsers.push(function (inputValue) {
var transformedInput = inputValue.toLowerCase().replace(/ /g, '');
if (transformedInput!=inputValue) {
modelCtrl.$setViewValue(transformedInput);
modelCtrl.$render();
}
return transformedInput;
});
}
};
});
Yukarıdaki Yönerge gibi kullanılabilir bildirildi bitmez:
<input ng-model="sth" ng-trim="false" custom-validation>
Çözüm @tarafından Valentyn Shybanov önerilen olarak ise; giriş başına / sonuna bir boşluk vermemek istiyorsak ng-trim
Direktif kullanmamız gerekiyor.
Bu yaklaşımın avantajı 2 kat:
- Geçersiz değer modeline yayılır
- Bir yönerge kullanarak kolayca tekrar tekrar izleyenler çoğaltma olmadan herhangi bir giriş için bu özel doğrulama ekleyin
Ng-model ile zorluk ng-repeat giriş...
AngularJS - giriş metin kutusu üzerind...
Kullanarak giriş elemanı filtre angula...
ASP.NET MVC Html.ValidationSummary(tru...
Nasıl göster Model SONRASI bir eylem E...