jquery - 使用 jquery tablesorter 对日期进行排序的问题

标签 jquery asp.net-mvc tablesorter

我正在使用 tablesorter 插件对 MVC .NET 应用程序中的表进行排序。我的大部分专栏都是字符串,我对它们没有任何问题。与数字无关。问题是我的日期时间列也像字符串一样进行排序。它们的排序方式如下:01/04/2009、02/02/2009、03/08/2009 等。我从该 View 中的模型获取数据。

我的电话是默认电话:

$("#table").tablesorter();

我尝试指定日期格式,但没有成功:

$("#table").tablesorter({
            dateFormat: 'dd/mm/yyyy'});

当我手动输入带有随机日期的静态表时,奇怪的事情发生了。它得到排序!但是我的数据来自数据库调用并被放入模型中,然后我通过它进行处理并用数据写入 tr。

提前致谢。

编辑:这可能与我创建 tr 的方式有关吗?

<% foreach (var item in Model) { %>
<tr>
<td>
<%= Html.Encode(item.date) %>
</td>
<td>...</td>
<td>...</td>
<td>...</td>
</tr>
<% } %>

最佳答案

尝试将 Tablesorter 解析器添加到日期列中。 Tablesorter 附带了一个用于shortDate、usLongDate 和isoDate 的解析器。

$("#table").tablesorter({
    headers: { colNum: { sorter: 'shortDate'} }
});

其中 colNum 是包含日期的列。我在 tablesorter 网站上找到的唯一示例是 here 。如果表排序器对数字进行错误排序,这也适用。还有其他解析器用于百分比、IP 地址等。查看源代码末尾附近,它们将列在那里。

编辑: 在查看源代码时,dateFormat 选项似乎只查找“us”、“uk”、“dd/mm/yy”或“dd-mm-yy”。当您尝试“uk”时会发生什么?

关于jquery - 使用 jquery tablesorter 对日期进行排序的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1091921/

相关文章:

javascript - 使用 jQuery 提交表单时的竞争条件

javascript - 如何将图表与mvc中的相应数据一起动态导出到excel工作表

c# - 从布局页面访问 session 变量 ASP.NET MVC3 RAZOR

jQuery tablesorter 仅对某些行/列进行排序

javascript - 通过 Angular Directive(指令)删除然后添加元素会破坏输入 [radio] 上的 ng-model

jquery - 正确的 CSS 语法通过 jquery 获取 json 编码的数据属性

JQuery 表排序器 : Modify how it sorts empty cells

Jquery Tablesorter 不工作!这有什么问题吗?

javascript - 确保随机分配的属性没有重复

c# - MVC 中的 AJAX JSON 调用来过滤 View 中的列表