none
Validação decimal MVC3 RRS feed

  • Pergunta

  • Olá Pessoal, 

    Estou seguindo os tutoriais do asp.net para MVC e estou com um probleminha.

    Na minha view ao tentar validar um atributo decimal do model, está apresentando erro de validação.

     

    The value '9.99' is not valid for Price.

    The field Price must be a number. (caso digite 9,99)
    Só aceita números inteiros, mas o atributo é decimal.

    Alguma dica?!?!

    Valeu.

     

    quinta-feira, 5 de maio de 2011 17:28

Respostas

  • Fala pessoal!! Aqui funcionou fazendo isso: 
    No jquery.validate.js localize a linha: 
    number: function(value, element) { 
    substitua o return por: 
    this.optional(element) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:[\.,]\d+)?$/.test(value); 
    Para o números com milhar ainda não consegui achar uma solução. 
    fonte: http://rebuildall.umbraworks.net/2011/03/02/jQuery_validate_and_the_comma_decimal_separator Valeu!!
    sexta-feira, 13 de maio de 2011 14:41
  • Fazendo todo o processo do site:

    http://rebuildall.umbraworks.net/2011/03/02/jQuery_validate_and_the_comma_decimal_separator

    Deu certo!!!

    Obrigado.

    sexta-feira, 13 de maio de 2011 16:23
  • Esse post de blog ensina o que é preciso para habilitar validação no MVC para culturas como pt-BR e outras.

    http://levidad.wordpress.com/2011/07/11/mvc-3-validacao-para-culturas-como-pt-br/

     

    Att

    Phillippe


    Havoc.Destruction.Meshuggah
    segunda-feira, 11 de julho de 2011 17:35

Todas as Respostas

  • Otávio,

    Dê uma olhada nesse post do Haacked.

    http://haacked.com/archive/2011/03/19/fixing-binding-to-decimals.aspx

    segunda-feira, 9 de maio de 2011 16:17
  • Estou com o mesmo problema do Otávio!!!

     

    Tentei implementar a sugestão do Vinicius, mas não funcionou :(

     

    Conseguiu algo Otávio?

     

    Abs!

     

     

    quinta-feira, 12 de maio de 2011 17:51
  • Fala pessoal!! Aqui funcionou fazendo isso: 
    No jquery.validate.js localize a linha: 
    number: function(value, element) { 
    substitua o return por: 
    this.optional(element) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:[\.,]\d+)?$/.test(value); 
    Para o números com milhar ainda não consegui achar uma solução. 
    fonte: http://rebuildall.umbraworks.net/2011/03/02/jQuery_validate_and_the_comma_decimal_separator Valeu!!
    sexta-feira, 13 de maio de 2011 14:41
  • Aqui não funcionou não..

    Na minha View ele utiliza a include "~/Scripts/jquery.validate.min.js", alterei o ponto informado e não deu =(


    sexta-feira, 13 de maio de 2011 16:05
  • Fazendo todo o processo do site:

    http://rebuildall.umbraworks.net/2011/03/02/jQuery_validate_and_the_comma_decimal_separator

    Deu certo!!!

    Obrigado.

    sexta-feira, 13 de maio de 2011 16:23
  • Vc teria que utilizar a jquery.validate ao invés dessa, pelo que eu percebi são os mesmos métodos em ambas, apenas escritas de forma diferente.

     

    []s

    sexta-feira, 13 de maio de 2011 16:32
  • Eu acho uma puta falta de sacanagem num ter uma forma melhor de se fazer isso, mas você vai conseguir resolver o seu problema da seguinte forma:

    No Jquery coloque isso:

     

     $(document).ready(function () {
    
        $.validator.methods.range = function (value, element, param) {
          var globalizedValue = value.replace(".", "");
          globalizedValue = globalizedValue.replace(",", ".");
          return this.optional(element) || (globalizedValue >= param[0] && globalizedValue <= param[1]);
        }
    
        $.validator.methods.number = function (value, element) {
          return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:[\s\.,]\d{3})+)(?:[\.,]\d+)?$/.test(value);
        }
      });
    

     

    assim você não precisa mexer no arquivo fonte do jquery.validate
    com isso você consegue driblar a validação do cliente... mas o que muitos sites num dizem é que falta a vlidação do servidor...

    ai sim você usa esse tutorial:
    http://haacked.com/archive/2011/03/19/fixing-binding-to-decimals.aspx

     

    sexta-feira, 27 de maio de 2011 16:34
  • Esse post de blog ensina o que é preciso para habilitar validação no MVC para culturas como pt-BR e outras.

    http://levidad.wordpress.com/2011/07/11/mvc-3-validacao-para-culturas-como-pt-br/

     

    Att

    Phillippe


    Havoc.Destruction.Meshuggah
    segunda-feira, 11 de julho de 2011 17:35