3

我需要验证塞尔维亚文化中的十进制数字(小数分隔符是逗号而不是点)。

我正在网上寻找解决方案,大多数帖子建议使用 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>

此代码位于我需要验证的每个页面的末尾。当然,我在 HEAD 标记中加载 jQuery。

当我将页面加载到浏览器中时,控制台中没有错误,但小数分隔符仍然是一个点。

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">
4

0 回答 0