jQuery datepicker不能在AngularJS ng-repeat塊內工作。AngularJS ng-repeat-jquery Datepicker不能在ng-repeat內部工作
不確定在ng-repeat塊內代碼生成中是否有任何錯誤。 ng-repeat之外的邏輯也是一樣。
工作代碼
<div class="form-group">
<label class="control-label col-md-4">TEST DATE</label>
<div class="input-group col-md-2">
<input type="text" id="testDate" name="testDate" readonly="readonly" class="form-control">
</div>
</div>
不工作密碼
<div ng-repeat="reportType in reportTypes">
<div class="form-group">
<label class="control-label col-md-4">{{reportType.reportTypeLabel}}</label>
<div class="input-group col-md-2">
<input type="text" id="{{reportType.reportTypeCodeId}}Date" readonly="readonly"
class="form-control">
</div>
</div>
</div>
的Javascript
// Date picker dd/mm/yyyy
$(function() {
$("input[id*='date']").datepicker({
dateFormat : "dd/mm/yy"
});
});
$(function() {
$("input[id*='Date']").datepicker({
dateFormat : "dd/mm/yy"
});
});
這是錯誤的方式混合角和jQuery。當你的jQuery代碼只運行一次時,ng-repeat可能會添加或刪除元素。將所有jquery包裝爲指令或者根本不使用它 - 使用angular datepicker代替。 –
創建日期選取器指令。使用jQueryLite和datepicker作爲'element',確保清理$ scope destroy以避免內存泄漏。 –