出現在我的頁面上的兩個日曆是由於我包含在我的控制器文件中的指令。我使用datepicker
作爲ui-bootstrap以及我自己的指令都使用的指令。
<input type="text" class="form-control input-lg text-center datepicker" ng-model="formData.endDate" placeholder="Choose end date" datepicker/>
todoApp.directive("datepicker", function() {
return {
restrict: "A",
require: "ngModel",
link: function (scope, elem, attrs, ngModelCtrl) {
var updateModel = function (dateText) {
scope.$apply(function() {
ngModelCtrl.$setViewValue(dateText);
});
};
var options = {
dateFormat: "yy-mm-dd",
onSelect: function (dateText) {
updateModel(dateText);
},
minDate: -0
// maxDate: "+1M +10D"
};
elem.datepicker(options);
}
}
});
此前該指令的名字是datepicker
這是與datepicker
指令已經在ui-bootstrap
代碼存在衝突。所以,我在代碼改變了我的指令名稱:
<input type="text" class="form-control input-lg text-center datepicker" ng-model="formData.endDate" placeholder="Choose end date" mydatepicker/>
todoApp.directive("mydatepicker", function() {
return {
restrict: "A",
require: "ngModel",
link: function (scope, elem, attrs, ngModelCtrl) {
var updateModel = function (dateText) {
scope.$apply(function() {
ngModelCtrl.$setViewValue(dateText);
});
};
var options = {
dateFormat: "yy-mm-dd",
onSelect: function (dateText) {
updateModel(dateText);
},
minDate: -0
// maxDate: "+1M +10D"
};
elem.datepicker(options);
}
}
});
而不是使用datepicker
作爲名稱指令,我用mydatepicker
。因此衝突得到解決。
你還在包括http://code.jquery.com/ui/1.10.3/jquery-ui.js嗎? – Ankh
是的,我想從jquery鏈接的datepicker。而不是自舉的。 –