日期过滤器在gridmvc中不起作用

时间:2014-07-08 04:08:54

标签: asp.net-mvc

我正在开发Mvc应用程序。我使用gridMvc版本2.0.0.0。当我试图过滤日期但它不起作用时。当我尝试从日历中选择日期时,日期未被选中。

下面是我的视图代码

@model IEnumerable<StockWatch.DTO.EmployeeDTO>
@using GridMvc.Html
@using System.Web.UI.WebControls

@{
    ViewBag.Title = "Index";
}
<div class="row-fluid" style="margin-top:30px;margin-bottom:10px;margin-left:0px; margin-right:0px;">
    <div class="listheading span9">
        <div class="span2" style="font-size:22px;margin-right:5px;">
            Employees
        </div> 
    </div>
    <div class="createlink span3" style="text-align:right;margin-left:10px;">
        @Html.ActionLink("+ Add Employee", "Create")
    </div>
</div>

<div class="span12" style="margin-left:0px;margin-right:0px;">
        @Html.Grid(Model).Columns(columns => 
                    {
                        columns.Add(c => c.FirstName).Titled("First Name").SetWidth(400).Sortable(true).Filterable(true);
                        columns.Add(c => c.LastName).Titled("Last Name").SetWidth(900).Sortable(true).Filterable(true);
                        columns.Add(c => c.MobileNo).Titled("Mobile No.").SetWidth(400).Sortable(true).Filterable(true);
                        columns.Add(c => c.Email).Titled("Email").SetWidth(400).Sortable(true).Filterable(true);
                        columns.Add(c => c.LocationName).Titled("Location").SetWidth(800).Sortable(true).Filterable(true);
                        columns.Add(c => c.Designation).Titled("Designation").SetWidth(400).Sortable(true).Filterable(true);
                        columns.Add(c => c.JoiningDate).Titled("Joining<br/>Date").Format("{0:dd-MMM-yy}").SetWidth(400).Sortable(true).Filterable(true);  

</div>

怎么做? 提前谢谢。

4 个答案:

答案 0 :(得分:5)

您需要为其添加脚本和样式。

您的字段数据类型必须是Datetime。

Grid.MVC的脚本和样式

<link href="@Url.Content("~/Content/Gridmvc.css")" rel="stylesheet" />
<link href="@Url.Content("~/Content/bootstrap.min.css")" rel="stylesheet" />
<script src="@Url.Content("~/Scripts/jquery-1.9.1.min.js")"></script>
<script src="@Url.Content("~/Scripts/gridmvc.min.js")"></script>

Grid.Mvc datepicker的脚本和样式

<script src="~/Scripts/bootstrap-datepicker.js"></script>
<link href="~/Content/gridmvc.datepicker.css" rel="stylesheet" />
<link href="~/Content/gridmvc.datepicker.min.css" rel="stylesheet" />

答案 1 :(得分:0)

您需要更新gridmvc.js文件。

通过以下链接下载:

https://gridmvc.codeplex.com/SourceControl/latest

然后打开项目GirdMVC并将gridmvc.js文件再次复制到您的项目中。

答案 2 :(得分:0)

我一直遇到这种麻烦大约一天。有最简单的解决方案。您必须添加gridmvc日期选择器库。
这是最短的方法。

PM> Install-Package Grid.Mvc.DatePicker

从nuget控制台安装此库,然后将此库的引用添加到您的视图中,如下所示。

<script src="~/Scripts/bootstrap-datepicker.js"></script>

evrey将开始工作。有一个问题仍未解决,相同的过滤器不起作用。更大和更少的工作。

REF:https://gridmvc.codeplex.com/wikipage?title=Filtering

答案 3 :(得分:0)

仅将日期时间转换为日期。

它将搜索时间为00:00:00的日期,因此,如果您发送日期时间,它将找不到。

将格式更改为dd / MM / yy并没有帮助,您必须在模型中以这种格式发送它。

代替发送

JoiningDate

发送

JoiningDate.Date

在模型对象中。

相关问题