【发布时间】:2017-06-07 11:58:21
【问题描述】:
我有以下元素:
<div class="input-group bootstrap-timepicker">
<input type="text"
class="form-control timepicker"
name="start-time"
ng-model="timeSegment[0]"/>
<span data-toggle="timepicker" class="input-group-addon add-on btn btn-default">
<i class="icon icon-time"></i>
</span>
</div>
它包含在多次重复此元素的 ng-repeat 中。上面的代码 sn -p 完美运行,加载时正确显示正确的模型值,但使用文本框输入时间而不是时间选择器。我的模型值“timeSegment[0]”是格式为“hh:mm a”的字符串,例如“04:00 AM”。
但是,只要我将 bs-timepicker 属性添加到上述元素(以允许使用时间选择器而不是文本框输入时间):
<div class="input-group bootstrap-timepicker">
<input type="text"
class="form-control timepicker"
name="start-time"
ng-model="timeSegment[0]"
bs-timepicker/>
<span data-toggle="timepicker" class="input-group-addon add-on btn btn-default">
<i class="icon icon-time"></i>
</span>
</div>
他们显示的是默认时间,而不是我模型中的值。它正确地选择了我的模型,因为它正确地迭代了正确数量的元素并为它们显示了时间选择器,而不是时间选择器中的正确值。
同样奇怪的是,虽然时间选择器显示默认时间,但只要我更改其中一个,该值就会在我的模型中正确更新。
我认为可能是因为时间是我的模型是一个字符串,而不是日期,但是即使添加这里描述的属性http://mgcrea.github.io/angular-strap/#/timepickers,例如以下,也没有任何区别。我也尝试让我的模型成为 Date 对象,但同样没有区别。
data-modelTimeFormat="hh:mm A"
data-timeType="string"
【问题讨论】:
标签: angular-ui-bootstrap bootstrap-datetimepicker angular-strap