gpt4 book ai didi

jqgrid - JQGrid DateTime高级过滤器

转载 作者:行者123 更新时间:2023-12-03 23:46:53 25 4
gpt4 key购买 nike

我被困在这里-生产前要做的最后一件事。

来自oracle的日期采用以下格式:“ 8/14/2012 10:46:48 AM”

我在jqgrid上使用以下内容:

{ name: 'CreationDate', index: 'CreationDate', formatter: 'date', formatoptions:    { 'srcformat': 'ISO8601Long', 'newformat': 'm/d/Y - g:i A' }, sorttype: 'date', width: 95, align: 'right', resizable: false },


我在网格上显示以下内容:“ 08/14/2012-10:46 AM”

问题是,当我尝试使用高级过滤器时,它不起作用。我的猜测是由于时间原因,关于如何解决此问题的任何建议?

更新

奥列格(Oleg),我复制了您发布的代码并进行了更改,但仍然一无所获。我正在使用高级过滤器。感谢您的所有帮助,我真的非常感谢。我希望我能送你一些啤酒到德国:o)

最佳答案

我认为主要问题是您在g内使用newformat格式,jqGrid当前不支持该格式进行本地过滤/搜索。您可以尝试使用H格式。或者,您可以使用the answer中描述的修复程序。

更新:The demo表明,在应用我引用的修复程序后,可以将formatter: 'date', formatoptions: { 'srcformat': 'ISO8601Long', 'newformat': 'm/d/Y - g:i A' }与“高级搜索”对话框一起使用。您可以尝试演示并输入与下图相同的数据(10/04/2012 - 5:55 PM)。您必须看到以下结果:



更新2:在为您准备另一个演示期间,我在内部parseDate函数中发现了另一个错误。问题是,仅当需要解析的日期包含与指定格式相同的元素时,parseDate函数的当前实现才能正常工作。例如,日期10/04/2012使用'm/d/Y - g:i A'格式将被错误地解析。要修复该错误,可以添加以下代码:

if(typeof date[k] === "undefined") { continue; }


作为 the loop正文的第一行。固定版本的 jquery.jqGrid.src.js您可以获取 here

在演示中,我使用 jqGrid searchingmultipleSearch: true选项。结果,可以指定日期间隔,例如

10/04/2012 <= x <= 10/05/2012


相应的“搜索对话框”如下图所示,您将能够按日期间隔进行过滤

关于jqgrid - JQGrid DateTime高级过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11955081/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com