javascript - defaultDate 选项与 setDate 方法之间的区别

标签 javascript jquery jquery-ui jquery-ui-datepicker

我正在尝试使用 jQueryUI DatePicker。我必须了解的主要内容之一是在页面加载时设置日期的方式。

经过一些研究,我发现了两种不同的方法:

  1. 使用 defaultDate 选项
  2. 使用setDate 方法

到目前为止我发现的主要区别是 defaultDate 选项仅在 datePicker 日历本身中设置值。

setDate 方法在 input type text 和 datePicker 日历本身中设置日期。

一件有趣的事情是,当同时使用setDate 方法和defaultDate 选项时,使用setDate 方法设置的日期会覆盖日期的值使用 defaultDate 选项设置。

参见 http://jsfiddle.net/vb7mu3sf/

我注意到的另外几个不同之处:

  • 两者都接受日期作为 Date 类型作为参数(这非常简洁)但是 defaultDate 选项接受其他类型(数字和字符串)。
  • setDate 方法当然可以在 datePicker 上随时调用

关于它们的差异,我还遗漏了什么吗?

资源:

最佳答案

查看文档:

defaultDate
Set the date to highlight on first opening if the field is blank.

setDate
Sets the date for the datepicker.

没有太多要解释的了。如上所述:

  • 设置 defaultDate 属性:
    • 设置当日历打开且字段为空白时聚焦的日期。
    • 不更新字段。
    • 用户必须按回车键或点击日期才能更新该字段。
  • 调用 setDate 方法:
    • 更新字段。
    • 在字段不为空时打开日历会导致该日期聚焦选中

一种技术或另一种技术的可能用途:

  • 如果日期是必填字段 - 并且 - 有默认值,则使用 setDate 方法。如果用户对预先输入的日期没有问题,这将节省两次点击。
  • 否则,如果用户选择激活日期选择器,则使用 defaultDate 指定焦点日期。

注意事项:

... but defaultDate option accepts additional types (Number & String).

实际上,setDate 接受 defaultDate 接受的所有日期版本。

setDate method can of course be called at anytime on the datePicker

defaultDate 选项也可以随时设置。例如,如果有两个日历,例如 checkin 和 checkout 并且用户选择 checkin 日期为 2014 年 11 月 10 日,那么您需要将另一个日历上的 defaultDate 设置为 2014 年 11 月 11 日。

关于javascript - defaultDate 选项与 setDate 方法之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25602649/

相关文章:

javascript - 匹配最高选项卡的高度 - 设置幻灯片高度

Javascript,打字时自动加载文本框

jquery - 如何删除特定父div的所有内部div?

c# - MVC 5 ASP.NET Json 结果传递参数为 null

javascript - 使用 data-popup 属性显示 Jquery-ui 对话框

javascript - js : format txt data to json data

javascript - 如何使用服务器时间为用户的操作计时

javascript - 在 js 或 Jquery 中还原 removeAttr

jquery 选项卡在顶部添加空间

javascript - 使用相同的 div 切换页面的不同部分