Сконфигурируйте globalize.js для использования CLDR для проверки десятичных чисел
Мне нужно проверить десятичные числа в сербской культуре (десятичный разделитель - запятая, а не точка).
Я смотрю в Интернете, чтобы найти решение, и большинство сообщений предлагают использовать globalize.js. Но я могу настроить его на работу для меня.
Вот код:
<script src="~/lib/jquery-validation/dist/jquery.validate.min.js"></script>
<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js"></script>
<script src="~/lib/cldrjs/dist/cldr.js"></script>
<script src="~/lib/cldrjs/dist/cldr/event.js"></script>
<script src="~/lib/cldrjs/dist/cldr/supplemental.js"></script>
<script src="~/lib/globalize/dist/globalize.js"></script>
<script src="~/lib/globalize/dist/globalize/number.js"></script>
<script>
$.when(
$.get("/lib/cldr-data/supplemental/likelySubtags.json"),
$.get("/lib/cldr-data/main/sr/numbers.json"),
$.get("/lib/cldr-data/supplemental/numberingSystems.json")
).then(function () {
return [].slice.apply(arguments, [0]).map(function (result) {
return result[0];
});
}).then(Globalize.load).then(function () {
Globalize.locale("sr");
});
</script>
Этот код находится в конце каждой страницы, где мне нужно проверить. Конечно, я загружаю jQuery в тег HEAD.
Когда я загружаю страницу в браузер, в консоли не возникает ошибок, но десятичный разделитель по-прежнему является точкой.
ASP.NET 5 MVC6 генерирует тег ввода:
<input class="form-control input-validation-error" type="text" data-val="true" data-val-number="The field Plaćanje must be a number." data-val-required="The Plaćanje field is required." id="Payment" name="Payment" value="0,00" aria-required="true" aria-invalid="true" aria-describedby="Payment-error">