Validador da faixa ASP.NET Movendo para a próxima página
-
05-07-2019 - |
Pergunta
Eu coloquei um validador de intervalo em um controle de caixa de texto ASP.NET na minha página da web; Sempre que o intervalo não está atendendo; Ele vai desativar a mensagem de erro,
Mas está se movendo para a próxima página. Como posso impedir que ele se mova para a próxima página após o clique do botão Enviar enquanto o intervalo não atendia?
Solução
Verifique se o botão de envio está no mesmo
ValidationGroup
como seu validador de intervalo. Isso é particularmente verdadeiro se você tiver mais de umValidationGroup
definiram.Verifique se a propriedade
CausesValidation
não está definido como falso no botão. o valor padrão éTrue
Portanto, se a propriedade não for declarada em seu ASPX ou código atrás, o botão deverá disparar sua sequência de validação.Se você não estiver usando o fluxo de página normal, (ou seja, seu botão tem a propriedade
UseSubmitBehvior
definido comoFalse
, ou em alguns casos, ao usar retornos de chamada de asych Ajax), então você deve envolver seu código de alteração de página em umIf
Bloco que verificaPage.IsValid
antes de disparar.Verifique se o
ControlToValidate
está definido como o controle correto e que ele não possui um valor padrão que passa a validação.
Outras dicas
Código?
Você está enviando diretamente para a próxima página, em vez de postar de volta à mesma página e redirecionar?
Você está redirecionando em Page_load, que ocorre antes da validação?