【发布时间】:2016-08-13 06:18:25
【问题描述】:
我在表单字段中使用 daterangepicker 来显示日期选择器。
如您所见,这在底部的字段中可以正常工作,但在 ng-if 中包含的字段中却不行。
http://plnkr.co/edit/WogKyUDNAVAXQTm3lOJR?p=preview
这不是 daterangepicker 特定的,ng-if 中的任何 jQuery 函数都是如此。
其中一种解决方案涉及使用ng-show,但在这种情况下它必须是ng-if。
【问题讨论】:
-
ng-if如果不满足条件,则删除 dom。这意味着您的 jquery 已经执行并且该元素不存在。因此,当ng-if评估为真时,您只有文本输入。另一方面,ng-show更像是一种显示隐藏行为。所以元素存在并且你的 jQuery 能够转换它。同样ng-if意味着更多的 dom 操作,因为删除和添加元素到 dom
标签: jquery angularjs datepicker angular-ng-if