Ho una semplice pagina di aspx con alcuni TextBox e un pulsante di invio. Alcuni campi sono obbligatori e sotto il pulsante si trova un ValidationSummary. La forma completa è più grande dell'altezza dello schermo, quindi è necessario scorrere verso il basso per raggiungere il pulsante di invio. Se non compilo tutti i campi richiesti e clicco su invio la convalida fallisce come previsto e il riepilogo della validazione mostra alcuni messaggi informativi sotto il pulsante. La convalida avviene sul client e non si verifica alcun postback.Come posso evitare che una pagina salti in cima dopo la convalida fallita?
Quindi tutto funziona come desiderato. Ma inquietante è che la pagina si sposta ("salta") in alto quando faccio clic sul pulsante di invio. Per vedere il riepilogo della convalida, è necessario spostarsi nuovamente verso il basso.
Ho provato a impostare la proprietà ShowSummary
su false
(che non ha molto senso): la convalida funziona ancora (senza postback) ma in questo caso la pagina non si sposta nella posizione superiore. Quindi il problema sembra dipendere dal rendering dei testi di validazione.
C'è un modo per impedire il salto di questa pagina?
Grazie in anticipo!
Aggiornamento:
Il comportamento che ho descritto sopra non sembra essere il browser dipendente. Ho provato in cinque diversi browser ed è ovunque lo stesso.
Vedi anche http://stackoverflow.com/questions/699171/asp-net-validation-summary-causes-page-to-jump-to-top –