我正在使用webgrid,因此我可以显示数据库中的数据。在页面加载网格正确显示在页面上,但当我尝试过滤数据时,我有一个文本框和一个提交按钮,当我按下搜索按钮时,我收到一个错误:“需要一个jquery脚本引用为了在webgrid帮助器中启用ajax支持“。我似乎无法找到问题所在。
在我看来,这是我的网格, 你好, 我正在使用webgrid,所以我可以显示我的数据库中的数据。在页面加载网格正确显示在页面上,但当我尝试过滤数据时,我有一个文本框和一个提交按钮,当我按下搜索按钮时,我收到一个错误:“需要一个jquery脚本引用为了在webgrid帮助器中启用ajax支持“。我似乎无法找到问题所在。
这是我视野中的网格,
<div id="myGrid">
@Html.Partial("Grids/_gridPayments", Model)
</div>
这是我的部分网页视图
@model IEnumerable<DAS.DAL.CustomerPayment>
@{
var grid = new WebGrid(source: Model, rowsPerPage: 15, ajaxUpdateContainerId: "myGrid");
@grid.GetHtml(rowStyle: "gridRow", alternatingRowStyle: "gridAltRow", footerStyle: "gridFooter", columns: grid.Columns(
grid.Column("FullName", "Πελάτης"),
grid.Column("Amount", "Ποσό", format: (item) => string.Format("{0:C}", item.Amount)),
grid.Column("Descr", "Περιγραφή"),
grid.Column("DTPaid", "Ημερομηνία πληρωμής", format: (item) => string.Format("{0:dd-MMM-yyyy}", item.DTPaid))
));
}
最后我的控制器功能是
var payments = BLPayments.getAllPayments();
if (!string.IsNullOrEmpty(txtSearchCustomer))
payments = payments.Where(a => a.FullName.Contains(txtSearchCustomer)).ToList();
if (!string.IsNullOrEmpty(txtSearchFromDate) && !string.IsNullOrEmpty(txtSearchToDate))
payments = payments.Where(a => a.DTPaid >= DateTime.ParseExact(txtSearchFromDate, "MM/dd/yyyy", null) && a.DTPaid <= DateTime.ParseExact(txtSearchToDate, "MM/dd/yyyy", null)).ToList();
if (!string.IsNullOrEmpty(txtSearchFromDate) && string.IsNullOrEmpty(txtSearchToDate))
payments = payments.Where(a => a.DTPaid >= DateTime.ParseExact(txtSearchFromDate, "MM/dd/yyyy", null)).ToList();
if (string.IsNullOrEmpty(txtSearchFromDate) && !string.IsNullOrEmpty(txtSearchToDate))
payments = payments.Where(a => a.DTPaid <= DateTime.ParseExact(txtSearchToDate, "MM/dd/yyyy", null)).ToList();
return PartialView("Grids/_gridPayments", payments);
if (!string.IsNullOrEmpty(txtSearchCustomer))
payments = payments.Where(a => a.FullName.Contains(txtSearchCustomer)).ToList();
if (!string.IsNullOrEmpty(txtSearchFromDate) && !string.IsNullOrEmpty(txtSearchToDate))
payments = payments.Where(a => a.DTPaid >= DateTime.ParseExact(txtSearchFromDate, "MM/dd/yyyy", null) && a.DTPaid <= DateTime.ParseExact(txtSearchToDate, "MM/dd/yyyy", null)).ToList();
if (!string.IsNullOrEmpty(txtSearchFromDate) && string.IsNullOrEmpty(txtSearchToDate))
payments = payments.Where(a => a.DTPaid >= DateTime.ParseExact(txtSearchFromDate, "MM/dd/yyyy", null)).ToList();
if (string.IsNullOrEmpty(txtSearchFromDate) && !string.IsNullOrEmpty(txtSearchToDate))
payments = payments.Where(a => a.DTPaid <= DateTime.ParseExact(txtSearchToDate, "MM/dd/yyyy", null)).ToList();
return PartialView("Grids/_gridPayments", payments);
提前感谢。
答案 0 :(得分:0)
添加了此代码
if (Request.IsAjaxRequest())
return PartialView("Grids/_gridPremadeMeals", premadeMeals);
else
return View("ViewPremadeMeals", premadeMeals);
并且工作。我觉得整个页面都令人耳目一新,但仍然无法找到原因......