angular ui日期选择器刷新禁用的日期



有人能从服务器响应中更新angular ui的禁用日期吗?

https://github.com/angular-ui/bootstrap/issues/779

您应该创建另一个指令,该指令将需要日期选择器的控制器。从您的指令中,您应该调用日期选择器的refreshView来重新评估禁用的数据库。

有人有这方面的示例代码吗?

我正在尝试使用angular ui日期选择器,以便从服务器响应中读取禁用的日期。我更改了日期选择器的最小日期以强制其刷新。

我看到另一个stackoverflow页面,用户让它刷新,但它依赖于点击的日期选择器日历。另一个用于将date-min属性设置为另一个字段的值。

对我来说,我有一个与日期选择器完全独立的字段。更改后,它会向服务器发送一个http请求,成功响应后,会更新可用日期。

更改最小日期以强制刷新的唯一问题是,有些时间是相同的,但要禁用的日期不同。我正在考虑将我不使用的日期选择器选项更改为随机值以强制刷新。

有人有更好的方法吗?我看到了通过服务进行的跨控制器通信,但这是一个不同的模块。我还看到了一个github问题,其中日期选择器控制器可以是

我发现了一个使用装饰器的简单解决方案:https://gist.github.com/cgmartin/3daa01f910601ced9cd3

然后,您只需要调用$scope.$broadcast('refreshDatepickers')来刷新日期选择器。

重要提示:对于更新的ui-bootstrap日期选择器库,如果使用带有uib-datepicker元素或属性的日期选择器,则可能需要将'datepickerDirective'替换为'uibDatepickerDirective'

角度引导日期选择器具有datepicker-options

此用户列出了解决方案:https://github.com/angular-ui/bootstrap/issues/2189#issuecomment-225685104

bogdandrumon评论Jun 13

Use datepicker-options="{minDate: yourScopeMinDate}"

这对我很有效。我有两个选择器,第二个选择器不能大于第一个选择器,所以如果第一个选择器发生变化,第二选择器的最大日期也会发生变化。

最新更新