Chcę, aby ten element div był wyświetlany, jeśli sprawdzanie poprawności formularza nie powiedzie się.Pokaż div, jeśli sprawdzanie poprawności nie powiedzie się
<div class="alert">
<strong>Warning!</strong> @Html.ValidationSummary(false, "Fix these errors:")
</div>
Próbowałem owinął je wewnątrz
if(! ViewData.ModelState.IsValid)
ale div nie jest wyświetlany po wysłaniu formularza. Prawdopodobnie dlatego, że nie ma sprawdzania poprawności jQuery. Logika sprawdzania poprawności wydaje się być w porządku, jeśli usunę listę podsumowania sprawdzania oświadczeń if wszystkie niepoprawne pola wejściowe.
Jak mogę przełączyć widoczność elementu div na podstawie sprawdzania poprawności?
Twoje obejście ma odpowiedni komfort użytkowania, dlatego go poprawiłem. Jednak wydaje mi się, że czegoś brakuje. Kto chce wypisać komunikat o błędzie '(Napraw te błędy)' zanim formularz zostanie jeszcze zakończony. Wygląda na to, że '@ Html.ValidationSummary' powinien mieć mechanizm przełączania widoczności do niego ... – dbd
Prawda. Jednakże, jeśli po prostu nie owijasz @ Html.ValidationSummary w div, będzie się on ukrywał, dopóki nie będzie potrzebny ... –
Jesteś pewien? Kiedy zaczynałem walidację, zostawiłem '@ Html.ValidationSummary' przez to samo bez div, a tekst' Napraw błędy 'jest tam od samego początku. – dbd