2014-10-30 20 views
6

Tôi đang sử dụng phiên bản mới nhất của Xác thực jQuery Không phô trương kết hợp với phiên bản mới nhất của Xác thực jQuery. Việc xác nhận chính nó hoạt động như một sự quyến rũ. Tuy nhiên, nếu trường không hợp lệ, các giá trị sẽ được thêm vào thuộc tính aria-describedby.Nhiều giá trị được mô tả bởi aria khi sử dụng Xác thực jQuery Không phô trương

Giả sử tôi muốn nhập mật khẩu của mình (để xác thực độ dài của mật khẩu phải lớn hơn 6). HTML ban đầu trông như thế này:

<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"> 

tôi bắt đầu gõ một mật khẩu chỉ với 5 ký tự và sau đó loại bỏ tập trung từ input bằng cách nhấn vào đâu đó trên body. Việc xác thực chạy qua và một loạt các thuộc tính và giá trị bao gồm aria-describedby sẽ được thêm vào. Bây giờ thuộc tính aria-describedby chỉ có một giá trị Password-error. Nếu sau đó tôi lấy nét trường nhập một lần nữa và xóa tất cả các ký tự và thậm chí tiếp tục nhấn phím lùi, một giá trị mới trên mỗi khóa được thêm vào. Điều này dẫn đến những điều sau đây:

<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"> 

Đây hoàn toàn là giá trị cho thuộc tính xem xét các giá trị bằng nhau. Hành vi này có bình thường hay không ai đó biết cách sửa lỗi này?

+0

Bạn đã tìm thấy giải pháp nào chưa? – Alex

+0

Xem câu trả lời của tôi bên dưới. Bằng cách nào đó vấn đề đã biến mất sau khi tôi xây dựng lại các giải pháp trong VS và xóa các bản sao bóng được tạo ra trong nền. – LordTribual

Trả lời

0

Tôi không có giải thích rõ ràng cho vấn đề nhưng kể từ khi Visual Studio tạo bản sao ẩn trong nền tôi có thể giải quyết vấn đề bằng cách xóa tiền mặt và xóa tất cả các tệp bóng cho dự án và xây dựng lại sau đó.

4

Sự cố này đã có trong phiên bản v1.13.0 của jquery.validate.js nhưng từ đó đã được sửa (ít nhất là v1.14.0).

Các vấn đề liên quan