Mam stronę asp.net z wieloma zestawami podsumowań sprawdzania poprawności z ShowMessageBox="True"
i kilkoma walidatorami. Natknąłem się na sytuację, gdy sprawdzanie poprawności nie powiedzie się poprawnie, ale następne kliknięcie, które normalnie wywołałoby odświeżenie strony, nie powoduje odświeżenia. Tak więc kroki wyglądają tak:Dlaczego mój formularz nie zostanie odesłany po sprawdzeniu poprawności?
- Kliknij przycisk, który uruchamia sprawdzanie poprawności.
- Walidacja kończy się niepowodzeniem i wyświetlany jest komunikat z komunikatem o błędzie.
- Kliknij inny przycisk, który nie jest sprawdzany, ale powinien wywołać oddzwonienie. Nic się nie dzieje.
- Kliknij ten sam przycisk, co w kroku 3, ponowne odświeżenie jest zgodne z oczekiwaniami.
Co może powodować takie zachowanie?
EDYCJA: Walidacja była wykonywana w następujący sposób. Na stronie asp:
<asp:Button runat="server" id="btn" onClientClick="return DoValidation();" />
w javascript:
function DoValidation() {
if (!Page_ClientValidate('group1'))
return false;
if (!Page_ClientValidate('group2'))
return false;
return true;
}
prawdopodobnie będziesz musiał opublikować kod, aby uzyskać dobrą odpowiedź. –
spróbuj ustawić właściwość reasonvalidation na false dla drugiego przycisku? – IrishChieftain
Próbowałem ustawić to na false i otrzymałem ten sam wynik. Strona jest dość skomplikowana. Miałem nadzieję, że ktoś widział podobną sytuację. – Mykroft