required
Ve ng-required
(form doğrulama) arasındaki fark nedir ?
required
Ve ng-required
(form doğrulama) arasındaki fark nedir ?
Yanıtlar:
AngularJS form öğeleri, required
doğrulama işlevlerini gerçekleştirme özniteliğini arar . özelliği bir boole testine bağlı olarak ng-required
ayarlamanıza olanak tanır required
(örneğin, yalnızca B alanını zorunlu kılın - örneğin, bir öğrenci numarası - A alanının belirli bir değeri varsa - "öğrenci" yi bir seçim olarak seçtiyseniz )
Örnek olarak <input required>
ve <input ng-required="true">
aslında aynı şey
Bunun neden böyle olduğunu merak ediyorsanız (ve sadece <input required="true">
veya değil <input required="false">
), bunun nedeni HTML sınırlamalarından kaynaklanmaktadır - required
niteliğin ilişkili bir değeri yoktur - yalnızca varlığı, öğenin gerekli olduğu anlamına gelir (HTML standartlarına göre) - bu yüzden açısal gerekli değeri ayarlamak / ayarlamak için bir yola ihtiyaç duyar ( required="false"
geçersiz HTML olur)
<form method="post" action="/foo" novalidate>
. Yine bu, açısalJS ile ilgili olmayan bir html5 özniteliğidir.
ng-required
bir kapsam / denetleyici değişken işaret ettiğinde , açısal bunu değişiklikler için izler ve gerekli özniteliği buna göre ayarlar. Basit HTML required
özelliği söz konusu olduğunda bu tür bir esnekliğe sahip değilsiniz. Hayır? Ve biz aynı konuyla ilgili olarak, ne olacak ng-attr-required
? Tam olarak aynı ng-required
mı?
Ben tiago cevabı için bir addon yapmak istiyorum :
Diyelim ki öğeyi aynı özelliği kullanarak ng-show
ve ekleyerek required
gizlediniz:
<div ng-show="false">
<input required name="something" ng-model="name"/>
</div>
aşağıdaki gibi bir hata verir:
Name = '' ile geçersiz bir form denetimi odaklanamıyor
Bunun nedeni required
, hidden
öğelere doğrulama uygulayamamanızdır . Kullanmak şartlı olarak sadece gerekli olan gerekli doğrulama uygulamayıng-required
kolaylaştırır !!
ng-if
yerine kullanabilirsiniz . ng-show
ng-hide
HTML özelliği required="required"
bu alan geçerli olabilmesi için form için gereklidir söz konusu tarayıcıyı anlatan bir ifadedir. ( required="required"
XHTML formudur, sadece kullanmak required
eşdeğerdir)
Eğik nitelik ng-required="yourCondition"
demektir 'isRequired (yourCondition)' ve HTML niteliğini belirler dinamik size durumuna bağlı için.
Ayrıca unutmayın HTML sürümü kafa karıştırıcı , öyle değil yazma gibi bir şey Koşullu olarak mümkün required="true"
veya required="false"
nitelik konularda, sadece varlığı (şimdiki araçlar true)! Angular size bu konuda yardımcı oluyorng-required
.