2010-07-23 70 views
1

我需要创建一个功能根据时间来过滤数据。比较时在javascript

我有在相关行离境航班时间的表,我需要的是,我会把时间过滤器领域我的形式,和之前选定的时间后躲在航班。换句话说,在选定的时间间隔之后的飞行将是可见的。

我有表,我的投入获取时间信息没有问题,但我现在该怎么他们比较没有。 我使用jquery。

+1

什么时间格式? – James 2010-07-23 08:05:19

回答

6

无需在这一个jQuery的。只是普通的旧javascript。

最简单的方法是只转换为使用getTime方法(我认为这是这个名字)的日期对象UNIX时间。然后做一个比较大/小的比较,看看这些值是否在范围内。

+0

欢迎来到javascript日期对象! – 2010-07-23 08:01:36

0

做客户端的数据操作(排序,过滤,分组)的最简单的和快速的方法是jOrder。

在你的情况,我认为数据看起来是这样的:(日期1和date2是日期对象)

var data = [{flight: '776', departure: date1}, {flight: '51', departure: date2}]; 

第一件事就是创建一个jOrder表与阵列组成,出发时间指数。

var table = jOrder(data) 
    .index('departure', ['departure'], {grouped: true, ordered: true}); 

然后,你可以很容易地在指定日期范围内选择行。

var hits = table.where([{ departure: {lower: datelow, upper: datehi}}], {mode: jOrder.range}); 

最后,您可以根据命中数重建或修改UI对象。

jOrder可在http://github.com/danstocker/jorder