none
validação no mvc 3 com razor RRS feed

  • Pergunta

  • Como já diz o título, estou usando o mvc razor. Estou com um projeto que utiliza o ajax.beginform. Nesse post

    http://social.msdn.microsoft.com/Forums/pt/mvcpt/thread/88a25ccc-454d-4072-952c-20a127f72a7b

    fui instruído a realizar uma validação no servidor, gostaria de saber como posso fazer a validação do formulário no cliente, exibindo mensagem de erro e tudo mais. Na minha página tenho dois formulários, cada um em uma partialview, sendo que cada form direciona para uma action em um mesmo controller, dessa maneira:

    @using (Ajax.BeginForm("signIn", "Home", new AjaxOptions { UpdateTargetId = "Container", HttpMethod = "POST", OnSuccess = "alert('onsuccess fired')", LoadingElementId = "dvLoading", InsertionMode = InsertionMode.Replace, }))

     

    @using (Ajax.BeginForm("signUp", "Home", new AjaxOptions { UpdateTargetId = "Container", HttpMethod = "POST", OnSuccess = "alert('onsuccess fired')", LoadingElementId = "dvLoading", InsertionMode = InsertionMode.Replace, }))

     

    gostaria de saber como faço para validar os campos dos meus formulários ainda no cliente e caso correto, direcioná-lo para a action correta. Li algo parecido nesse post, porém não sei como direcionar para a correta action

    http://imasters.com.br/artigo/12384/jquery/validacao_de_formularios_com_jquery/

    gostaria também de saber como comparar dois campos, pois na hora do cadastro tenho senha e confirmar senha, como posso fazer essa comparação no cliente também, além disso definir o mínimo e o máximo de caracteres de um textbox.

    Também gostaria de saber o que faço para o loadingelementid funcionar, pois o mesmo não está, sendo que coloquei dessa maneira:

    <div id="dvLoading" style="display: none;">
           <img src="@Url.Content("~/Content/images/load.gif")" />
    </div>

     

    sou novo no mvc e por isso tenho muitas dúvidas, se alguém puder me ajudar ficarei grato, desde já adradeço, obridado.



    sexta-feira, 8 de abril de 2011 21:18

Todas as Respostas

  • Você pode usar DataAnnotations

    Ha varias threads no forum que abordam esse assunto


    Contato:albertim_brasil@hotmail.com - Se ajudei, marca como útil.
    Twitter: Me siga!!
    Blog:http://albertomonteiro.net/

    segunda-feira, 11 de abril de 2011 12:29
  • Uma forma bem simples de se comparar 2 campos e com o uso do "COMPARE". Basta definir no seu model a seguinte instrução:

    public class Login{
       [Required]
       public string Senha { get; set; }
       [Required, Compare("Senha", ErrorMessage = "As senhas não conferem.")]
       public string NovaSenha { get; set; }
    }


    Se esta dica foi Útil, marque-a como resposta. ;)

    • Editado Fabio.Junio quarta-feira, 19 de setembro de 2012 14:31
    quarta-feira, 19 de setembro de 2012 14:30