Pergunta

Eu tenho um monte de caixas de texto e um botão Salvar para atualizar alguma coisa. Quando eu clique em Salvar Eu tenho o código que determina se eles estão correctamente preenchido, no código por trás do arquivo.

Se não forem preenchidos corretamente, eu quero mostrar uma mensagem de erro na forma de um alerta.

Qual é a melhor maneira de fazer isso? Pressionando o botão, obviamente, faz a postagem página, então eu pensei sobre a adição de algo para o URL como mypage.aspx?errormessage=blahblah mas eu não sei se este é o melhor caminho ou até mesmo como fazê-lo ...

Todas as sugestões?

Foi útil?

Solução

alertas

Modal são ruins, assim como as postagens. Tente verificar, tanto quanto possível no lado do cliente o sem um round-trip para o servidor. Consulte jQuery Validation plugins para uma forma menos intrusiva de validação.

Outras dicas

Você pode usar um CustomValidator de script do lado do cliente de disparo que mostra uma caixa de alerta?

Você pode usar o método ClientScript.RegisterStartupScript () no erro do lado do servidor código de manipulação de escrever um trecho de javascript que chama de alerta ( 'mensagem'), algo como isto

private void ShowErrorMessage(string message)
{
    string script = "alert('" + message + "');";
    ClientScript.RegisterStartupScript(typeof(MyPage), "errorScript", script, true);
}

Mas eu recomendo que você use um validador vez. Se você implementar o seu próprio validador personalizado, você pode torná-lo emitem script do lado do cliente que pode ser executado antes da apresentar, para evitar a postagem por completo.

Uma coisa boa sobre validadores é que suas mensagens de erro pode ser exibida em um ValidatorSummary na página, evitando a caixa de alerta feio.

Em primeiro lugar eu não recomendo mostrando uma caixa de alerta modal para o usuário.

Você pode chamar uma função javascript a partir do código do lado do servidor e em que função você pode saltar para fora do erro.

Ou você pode emitir um pedido de AJAX e após a validação no lado do servidor, você pode enviar de volta uma resposta para o cliente.

vários controles de validação do ASP.NET (com validação do lado do cliente ativado), juntamente com mensagens de erro adequadas e / ou mensagem de resumo vai ser bom o suficiente para a maioria dos cenários.

Para 'AJAX sensação e comportamento, coloque os controles em um updatepanel será fácil de implementar também.

Use Ye Olde Validators tanto quanto poss, eles tornam-se alguns javascript para o cliente para yu pode fazer um monte de validação usando esses controles e somente quando eles estão todos satisfeitos faz isso permitir que a página para enviar.

Eles fazem fogo contra todos os enviar por isso, se você não quer que cada ação de envio para demiti-los de fazer a parte controles de um grupo de validação.

Eles podem validar a entrada usando expressões regulares, certifique-se um campo tem um valor e há um pouco mais também.

Depois, há propriedade para declarar uma 'mensagem' e um controle para mostrar todas as mensagens de validação. Tudo muito sinuosos e embutido no IDE.

Go confira os controles de validação.

Tente o seguinte código no seu evento de clique de botão:

string strErr="Error!";//Put your error message here
ClientScript.RegisterStartupScript(GetType(), "scrptName", "javascript: alert('"+strErr+"'); ", true);

Ela vai mostrar uma mensagem de alerta.

put Else uma etiqueta na sua página aspx e definir falsa visível no evento Page_Load. Quando erro ocorre em seu evento botão definir a visibilidade rótulo 'true' e preencha o texto do rótulo com a mensagem de erro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top