Intento utilizar el complemento jQuery Globalization para solucionar el problema de coma con la validación de cliente no obstructiva de jquery. Sin embargo, probé muchas soluciones y no hay una buena solución para arreglar esto. Estoy en una computadora de localización no inglesa y esto es importante para que mis clientes ingresen un valor decimal como "123,66" y no "123,66". Validación de ASP.NET dime que el precio debe ser un número! ¿Meh? En serio ? lolNo se puede obtener la globalización de jquery para que funcione
Recibo este error de javascript cuando intento solucionarlo.
$.global is undefined
Aquí mi código.
Layout.cshtml
<!DOCTYPE html>
<html>
<head>
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.7.1.js")" type="text/javascript"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"> </script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")"type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/globalize.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/cultures/globalize.cultures.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.form.js")"type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/glob.fix.js")" type="text/javascript"></script>
</head>
<body>
@RenderBody()
</body>
</html>
glob.fix.js
$.validator.methods.range = function (value, element, param) {
var globalizedValue = value.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);
}
No puedo entender .. que debería funcionar desde añadí ~/Scripts/globalize.js
.
¿Alguna idea? ¿o podría tener una mejor solución para que la validación del cliente funcione y me permite ingresar una coma como valores decimales?
¡Gracias por el código del validador de rango! –