我正在用kendo做一个视图,在这个视图中,用户应该输入他的费用金额,但我的视图不接受包含十进制数的值!也就是说,如果我放在示例12上,它是可以的,但如果我放12.256,它会显示我一个异常!!
我想接受这样的值: 12.250 0.120 ....
这是我的观点:
<div class="form-group">
<div class="col-md-6 col-sm-6">
<label class="cke_label" for="Montant">Montant Recette</label>
</div>
<div class="col-md-6 col-sm-6">
<input type="number" required="" style="text-align: right; width: 100%; background-color: inherit;" placeholder="Montant" data-number-to-fixed="2" data-number-stepfactor="100" class="currency" id="Montant" name="Montant">
<span class="field-validation-valid text-danger" data-valmsg-for="Montant" data-valmsg-replace="true"></span>
</div>
<script>
$(document).ready(function() {
Montant.value = $("#Montant").kendoNumericTextBox({
format: 'n3',
toFixed: '3',
value: "0.000",
min: "0",
step: "0.001"
}).data("kendoNumericTextBox");
});
</script>
</div>
这是我的控制器:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "EncaissementID,libelle,DateEncaissement,Montant,ProjetID,Description")] Encaissement encaissement) {
encaissement.Montant = Convert.ToDecimal(encaissement.Montant);
if (ModelState.IsValid) {
db.Encaissements.Add(encaissement);
db.SaveChanges();
return RedirectToAction("Index", "Encaissement");
};
ViewBag.ProjetID = new SelectList(db.Projets, "ProjetId", "nomP");
return View(encaissement);
}
发布于 2016-04-26 23:43:54
你的问题对于你正在寻找的格式有点模棱两可(你想要逗号还是点作为小数点分隔符)。
基本上,您需要做的第一件事是包含区域性js文件:
<script src="http://cdn.kendostatic.com/2014.1.318/js/cultures/kendo.culture.en-US.min.js"></script>如果想要点作为输入,可以使用kendo.culture.en-US.min.js;如果想使用逗号,可以使用kendo.culture.fr-CA.min.js。这些只是例子..。您可以根据您的位置选择任何其他区域性文件。
然后,您需要通过将区域性传递给kendo.culture函数来告诉kendo他应该使用哪个区域性:
kendo.culture("fr-CA");有关kendo如何处理数字格式的更多详细信息,请参阅kendo's number formatting documentation。
https://stackoverflow.com/questions/36867592
复制相似问题