У меня есть вход и только для чисел. Когда я пишу 5, я могу отправить в контроллер, но 5.5 возвращает ноль в контроллер. Я использую MVC, Bootstrap Javascript. Как я могу отправить десятичное число в контроллер?
$(".loader").show();
var thm = {};
thm.thm_cns = $("#thm_cns").val();
thm.thm_tr = $("#thm_tr").val();
thm.thm_year = $("#thm_year").val();
thm.thm_price = $("#thm_price").val();
thm.thm_alan = $("#thm_alan").val();
$.ajax({
type: "POST",
url: "/GGE/thm",
data: '{thm:' + JSON.stringify(thm) + '}',
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (json) {
alert(json);
$("input[type='text']").val('');
$("input[type='number']").val('');
$(".loader").hide();
$("#btn_thm").prop('disabled', false);
},
});
в этом коде я пытаюсь получить thm_price как десятичное значение, но не могу.
<div class="col-lg-3 col-sm-pull-3">
<input class="form-control" id="thm_price" name="thm_price" type="number" step="0.1"/>
</div>
класс thm
public class thm
{
public int id { get; set; }
public string thm_cns{ get; set; }
public string thm_tr{ get; set; }
public string thm_year{ get; set; }
public decimal? thm_price{ get; set; }
public float thm_alan{ get; set; }
}
и это коды контроллера, где я не получаю десятичное значение.
[HttpPost]
public JsonResult thm(thm thm)
{
int? d;
int id = Convert.ToInt32(Session["id"]);
using (cEntities thm_post= new cEntities())
{
d = thm_post.thm_add(id, thm.thm_cns, thm.thm_tr, thm.thm_year, thm.thm_price,tohum.thm_alan);
}
if (d > 0)
{
return Json("Thm is ok.", JsonRequestBehavior.AllowGet);
}
else {
return Json("Thm is not ok ", JsonRequestBehavior.AllowGet);
}
}