asp.net-mvc – 用于选择的KendoUI网格Ajax绑定参数
|
我的ASP.NET MVC应用程序有一个基本的KendoUI网格,它使用ajax绑定进行读取.我想加强这一点,以便网格上方的表单用于帮助选择应该在网格中显示的数据.这是一个标准的搜索表单,带有搜索按钮等基本字段,如名字,姓氏,出生日期,客户来源等.当按下搜索按钮时,我想强制网格通过使用上面引用的字段传入搜索模型,从控制器获取满足条件的数据. 搜索表单包含在_CustomerSearch部分视图中. 通过点击OnDataBinding客户端事件并在其中更新参数值,然后手动进行Ajax调用来获取数据,我已经通过Telerik MVC扩展实现了这种事情.它不会出现KendoUI将以相同的方式运行. 视图 @Html.Partial("_CustomerSearch",Model)
<hr>
@(Html.Kendo().Grid<ViewModels.CustomerModel>()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.Id).Hidden(true);
columns.Bound(p => p.FirstName);
columns.Bound(p => p.LastName);
columns.Bound(p => p.DateOfBirth).Format("{0:MM/dd/yyyy}");
columns.Bound(p => p.IsActive);
})
.Scrollable()
.Filterable()
.Sortable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("_Search","Customer"))
)
)
调节器 public ActionResult _Search([DataSourceRequest]DataSourceRequest request)
{
return Json(DataService.GetCustomers2().ToDataSourceResult(request));
}
我设想控制器看起来像这样,但是找不到任何正在实现的例子,这是我需要帮助的. public ActionResult _Search([DataSourceRequest]DataSourceRequest request,CustomerSearchModel customerSearchModel)
{
return Json(DataService.GetCustomers2(customerSearchModel)
.ToDataSourceResult(request));
}
解决方法如果您的要求可以通过内置过滤来解决,Nicholas的答案可以正常工作.但是如果您的要求可以通过构建的过滤来解决为什么要创建自定义搜索表单?所以我想你有理由手动进行搜索,所以这里是我们在我们的项目中完成的(所以也许有更简单的方法,但这仍然适用于我们): 控制器动作很好: public ActionResult _Search([DataSourceRequest]DataSourceRequest request,CustomerSearchModel customerSearchModel)
{
return Json(DataService.GetCustomers2(customerSearchModel)
.ToDataSourceResult(request));
}
下一步:您需要一个从搜索表单收集数据的JavaScript函数(JS对象的属性名称应与CustomerSearchModel的属性名称相匹配): function getAdditionalData() {
// Reserved property names
// used by DataSourceRequest: sort,page,pageSize,group,filter
return {
FirstName: $("#FirstName").val(),LastName: $("#LastName").val(),//...
};
}
然后,您可以在每次读取时配置此函数: .DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("_Search","Customer")
.Data("getAdditionalData"))
)
最后在你的按钮点击你只需要刷新网格: $('#Grid').data('kendoGrid').dataSource.fetch(); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 什么时候应该在ASP.NET控件中使用#和=
- asp.net-mvc – ASP.NET MVC将数据从视图传递给控制器
- asp.net-mvc – 使用键入的HTML助手时的模型前缀
- asp.net-mvc – MVC 4. IIS 7.5 PUT返回405
- .net – TransactionScope:它变得更好了吗?
- asp.net-mvc-3 – 如何判断我的动作是否被RenderAction调用
- asp.net-mvc – 从ASP.NET MVC操作返回什么来允许jQuery aj
- 在Azure网络应用程序中显示ASP.NET 5错误页面
- asp.net-mvc – 使用linq2sql在c#mvc中不显示所选项的多选列
- asp.net-mvc – 使用AJAX绑定时,在创建/更新后IEnumerable属
- asp.net-mvc – 使用实体框架4.1创建复合主键
- asp.net-mvc – 如何在MVC3中为多行文本框创建多
- asp.net – 在测试期间如何使电子邮件到本地文件
- asp.net-mvc-3 – 从我的控制器调用索引视图时路
- asp.net-mvc-3 – 使用自定义VirtualPathProvide
- asp.net – WCF安全 – 我不明白的列表
- NHibernate中关于Inverse的理解和使用
- asp.net-mvc – ASP.NET MVC – 如何获取一个动作
- ASP.NET 4的IIS和服务器操作系统要求
- asp.net-mvc – 在asp.net mvc控制器中使用构造函
