mam pogląd poniżej:sprawdzania poprawności ukrytych pól
@Html.LabelFor(m => m.CompanyPostCode)
@Html.TextBoxFor(m => m.CompanyPostCode)
@Html.LabelFor(m => m.CompanyCity)
@Html.TextBoxFor(m => m.CompanyCity)
@Html.HiddenFor(m => m.CompanyCityID)
Wszystkie atrybuty są oznaczone jako [Wymagane] moim zdaniem modelu. Problem polega na tym, że mój identyfikator CompanyCityID (oznaczony jako Wymagany) jest ukryty, a zatem weryfikacja nie jest wykonywana w widoku. Jeśli pokażę ten atrybut w moim widoku, sprawdzanie poprawności jest wykonywane.
Moje pytanie: czy jest to możliwe do przeprowadzenia walidacji na ukrytym polu? Istnieje obejście?
Może się wydawać, że dziwne jest zatwierdzanie ukrytego pola. Powodem jest to, że to pole jest wypełniane z jQuery na podstawie specjalnych reguł. Jeśli nie jest wypełniony, wiem, że coś jest nieważne w widoku.
Dzięki.
Dziękuję bardzo. Dla mnie to teraz jasne. – Bronzato
Naprawdę nienawidzę bycia tym facetem, który koryguje ludzi, ale ustawienie ignorowania nie jest ustawione przez jquery.validate.unobtrusive.js. Należy także pamiętać o działaniu setDefaults przed jego użyciem. Jeśli ustawisz wartości domyślne po podłączeniu sprawdzania poprawności formularza, oznacza to, że połączenie jest opóźnione. Zapraszam do zapoznania się z bardziej szczegółowym wyjaśnieniem. http://stackoverflow.com/questions/8466643/jquery-validate-enable-validation-for-hidden-fields/14574974#14574974 – JustinMichaels
@JustinMichaels, może coś się zmieniło odkąd napisałem tę odpowiedź. W tym czasie sprawdziłem ustawienia jquery.validate.unobtrusive.js i zignorowałem. –