2014-10-30 12 views
6

jQuery Validate'in en son sürümüyle birlikte jQuery Validation Unobtrusive'ın en son sürümünü kullanıyorum. Doğrulama, bir çekicilik gibi çalışır. Ancak alan geçersizse, değerler aria-describedby özniteliğine eklenecektir.jQuery Doğrulaması Kullanılmıyorken aria tarafından açıklanan çoklu değerler Unobtrusive

Parolamı girmek istediğimi varsayalım (doğrulama için parolanın uzunluğu 6'dan büyük olmalıdır). İlk HTML şuna benzer:

<input data-val="true" data-val-minlength="The field Passwort must be a string or array type with  a minimum length of '6'." 
    data-val-minlength-min="6" data-val-required="The Passwort field is required." 
    id="Password" name="Password" tabindex="2" 
type="password"> 

Ben sadece 5 karakterli bir şifre yazın ve sonra body yere tıklayarak input odağı kaldırmak başlar. Doğrulama geçer ve aria-describedby dahil olmak üzere bir dizi özellik ve değer eklenir. Artık aria-describedby özniteliğinin tek bir değeri Password-error vardır. Daha sonra giriş alanını tekrar odaklar ve tüm karakterleri kaldırırsam ve hatta arka tuşa basmaya devam edersem, her bir tuştaki yeni bir değer eklenir. Bu aşağıdaki ile sonuçlanır:

<input data-val="true" 
    data-val-minlength="The field Passwort must be a string or array type with a minimum length of '6'." 
    data-val-minlength-min="6" 
    data-val-required="The Passwort field is required." 
    id="Password" name="Password" tabindex="2" type="password" aria-required="true" 
    aria-invalid="true" class="input-validation-error" 
    aria-describedby="Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error 
Password-error"> 

Bu değerler eşit olduğunu considiering özelliğin değerleriyle tamamen bir havai olduğunu. Bu davranış her zamanki gibi mi yoksa birisi bunu nasıl düzeltebileceğini biliyor mu?

+0

Herhangi bir çözüm buldunuz mu? – Alex

+0

Cevabımı aşağıya bakın. Bir şekilde VS'deki çözümü yeniden oluşturup arka planda oluşturulmuş gölge kopyalarını sildikten sonra sorun giderildi. – LordTribual

cevap

0

Sorun için açık bir açıklamam yok, ancak Visual Studio arka planda gölge kopyalar oluşturduğundan, sorunu gidermek ve proje için tüm gölge dosyalarını silerek sorunu çözmek ve daha sonra yeniden oluşturmak.

4

Bu sorun jquery.validate.js dosyasının v1.13.0 sürümünde mevcuttu, ancak o zamandan beri düzeltildi (en azından v1.14.0'da).

İlgili konular