jQuery DatePicker – 即时更改minDate和maxDate

我有一个特殊的问题与jQuery Datepicker。我可以轻松添加日期范围,但是我希望可选范围根据用户选择的事件而改变。

所以如果他们选择事件#1,他们只能从事件#1的日期范围内选择日期。

我写了一个简单的小功能,只要用户选择一个新的事件,它就会被调用,但它只显示最初设置的minDate / maxDate值。

function datepicker(startDate,endDate) {
  $( "#date" ).datepicker({
    inline: true,minDate: new Date(startDate),maxDate: new Date(endDate),dateFormat: 'dd/mm/yy' 
  });
}

我试过调用$(‘#date’)。datepicker(‘remove’);再次调用上述函数之前,看看它是否创建了一个具有正确日期的新实例,但似乎不起作用。

我通过开发人员工具检查了所有数据,正在调用和传递正确的一切。有什么我可以做的,使这项工作,我想要它吗?

解决方法

你有几个选择…

1)你需要调用destroy()方法,而不是remove(),所以…

$('#date').datepicker('destroy');

然后调用您的方法来重新创建datepicker对象。

2)您可以通过更新现有对象的属性

$('#date').datepicker('option','minDate',new Date(startDate));
$('#date').datepicker('option','maxDate',new Date(endDate));

要么…

$('#date').datepicker('option',{ minDate: new Date(startDate),maxDate: new Date(endDate) });

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...