2011-07-07 10 views
6

Estoy usando jQuery validación discreto ... Estoy configurado con Globalise para aceptar los números de esa manera: 1.500,50 (enmascarado por jQuery)MVC 3 decimales problema de validación en el servidor

Mi código hasta ahora

1-) configurado Globalize

$.validator.methods.number = function (value, element) { 
    return this.optional(element) || !isNaN(Globalize.parseFloat(value)); 
}; 

$(function() { 
    Globalize.culture('pt-BR'); 
}); 

2-) web.config configurado

<globalization culture="pt-BR" uiCulture="pt-BR" /> 

Ok, entonces estoy usando un plugin JQuery para formatear Textbox a Money (PT-BR) así: 1.500.000,50 ...

¡Mi validación de cliente JQuery funciona bien! Pero cuando va a la validación del servidor, recibí un error de ModelState:

"The value '1.500.000,50' is not valid for Total." 

¿Cómo puedo solucionar eso?

Gracias

+1

¿Qué tipo de formato es este? con dos decimales en lugar de uno? –

+1

el '.' es para miles y ',' para la parte decimal ... – Paul

Respuesta

7

Hay un problema en MVC unión a los valores por el estilo. Pase por this post por Phil Haack. Le muestra cómo crear una carpeta de modelo de cusom para manejar esto.

+0

Gracias ... Ya lo leí ... Y por alguna extraña razón mi DecimalModelBinder nunca se llama ... No sé por qué, lo sigo exactamente como Phil Haack describió ... La única diferencia es que estoy usando S # arp Architeture ... – Paul

+0

@Paul hace 'S # arp Architeture' agregar carpetas personalizadas? No he revisado el código fuente. – Eranga

+0

Tiene en Global.asax: ModelBinders.Binders.DefaultBinder = new SharpModelBinder(); – Paul

Cuestiones relacionadas