MVC下使用ajax后台查询值赋值到前端控件
初学MVC,今天做个简单的功能,就是输入BeginDate和EndDate,从后台计算后赋值给另外一个文本框Amount
界面很简单,方法也很简单,今天就使用jquery的post方法,先准备后台代码
public JsonResult GetAmount(string date1, string date2) { DateTime begin = DateTime.MinValue; DateTime end = DateTime.MinValue; if (DateTime.TryParse(date1, out begin) && DateTime.TryParse(date2, out end)) { var list = db.ProductDetails.Where(d => d.Date >= begin.Date && d.Date <= end.Date).AsQueryable(); if (list != null) { if (list.ToList().Count > 0) { var amount = list.Sum(d => d.Amount); return Json(new string[] { amount.ToString() }); } } } return Json(new string[]{"0"}); }
再来写View的Jquery代码
<script> $(function () { $("#BeginDate").blur(function () { CalAmount(this); }); $("#EndDate").blur(function () { CalAmount(this); }); }); function CalAmount(datet) { var d1 = $("#BeginDate").val(); var d2 = $("#EndDate").val(); $.post("/PayRecord/GetAmount", { date1: d1, date2: d2 }, function (aa) { if (aa) { $("#Amount").val(aa[0]); } }, "json"); } </script>
OK,就这样,就实现效果了,离开焦点的时候就给Amount赋值了,本来想用change事件,没有效果,先用blur先凑合用吧,等找到原因再来改过。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。