JQuery Datepicker 返回 Date 对象类型

Posted

技术标签:

【中文标题】JQuery Datepicker 返回 Date 对象类型【英文标题】:JQuery Datepicker returned Date object type 【发布时间】:2010-09-14 08:13:06 【问题描述】:

Datepicker 返回的对象类型是什么? 假设我有以下内容:

$("#txtbox").datepicker(
   onClose: function(date)
          //something
       
);

date 是什么?我有兴趣从另一个 Datepicker 读取日期对象以进行比较,例如:

   function(date)
       oDate = $("#oDP").datepicker("getDate");
       if(oDate == date)
          //do one
       else if(oDate > date)
          //do two
   

但是,这种比较是行不通的。我猜 Date 对象有某种比较方法,但我不知道。我还尝试比较 oDate.toString() > date.toString() 等日期的字符串表示形式,但无济于事。

【问题讨论】:

【参考方案1】:

我刚刚从here 下载了源代码并注意到(例如第 600 行)作者正在使用 .getTime() 来比较日期,你尝试过吗?

if (oDate.getTime() > date.getTime()) 
    ...

这也是切线,但你提到你尝试了 oDate.toString() 而我在examples 中注意到作者正在使用 .asString()

【讨论】:

嗨@Pat,您的链接现在是 404 页面。 两年后网络发生了变化 :-) 我想我设法追踪了新链接并修复了它,感谢您的提醒...【参考方案2】:

datePicker 返回一个Date 对象。

您的日期比较方法有效 - 来自W3schools:

var myDate=new Date();
myDate.setFullYear(2010,0,14);
var today = new Date();

if (myDate>today)

    alert("Today is before 14th January 2010");

您是否从该行获得了 oDate 的值?

oDate = $("#oDP").datepicker("getDate");

您的比较方法似乎有效 - 所以我想知道 datePicker 是否成功地从 #oDP 中提取值?

编辑 - oDate 确认包含有效日期。这可能是一个非常愚蠢的问题,但您是否确认date 包含有效日期?我想知道将其命名为与关键字Date (javascript keywords and reserved words) 相同是否可能存在问题。也许尝试在您的函数中将其重命名为 tDate 或类似名称,以明确这不会导致您的问题。

【讨论】:

我的 $("#oDP") 正在返回一个日期。我有一个警报(oDate)要验证。【参考方案3】:

使用它来比较日期,它有效: $("#datepickerfrom").datepicker("getDate")

【讨论】:

【参考方案4】:

什么是日期?

它是 $("#txtbox") 对象

【讨论】:

JQuery 文档说 date 是附加到 txtbox 元素的 Datepicker 实例的 Date 对象值。我已经打印了日期的值 (alert(date)),它实际上是一个 Date 对象。

以上是关于JQuery Datepicker 返回 Date 对象类型的主要内容,如果未能解决你的问题,请参考以下文章

如何在 jQuery("#delivery_date").datepicker( joomla plugin display only

jQuery 的 datepicker 日期和日期逻辑

jquery datepicker验证

PHP 将PHP date()样式dateFormat转换为等效的jQuery UI datepicker字符串

JQuery Datepicker - onSelect 日期格式

将PHP date()样式的dateFormat转换为等效的jQuery UI datepicker字符串