У меня есть веб-страница, где я добавил выпадающий список дат.Он использует дату для отображения событий, которые были активны в эту дату, причем самая последняя дата выбирается при загрузке страницы.Пользователи просили, чтобы я также добавил кнопки «Предыдущий» и «Следующий» для циклического отображения дат.Естественно, предыдущий будет отключен в первый день, а следующий будет отключен в последний день.И кнопка «Предыдущий / следующий» изменила бы выбранное значение раскрывающегося списка, чтобы я мог выполнять проверки на нем при отображении того, что было активным.
Это не работает так, как у меня.
Просмотр:
<label for="uniqueStartDates">Effective Date: </label>
<select ng-model="selectedDate" ng-change="loadEffectiveDate()"
ng-options="startDate for startDate in uniqueStartDates"></select>
<button ng-click="previousBtn()" ng-disabled="previousBtnDisabled()">
Previous
</button>
<button ng-click="nextBtn()" ng-disabled="nextBtnDisabled()">
Next
</button>
Спасибо за любую помощь.
РЕДАКТИРОВАТЬ:
Я разделил функции, но кнопки и функция отключения не работают.Чего мне не хватает, чтобы пройти?
$scope.previousBtn = function () {
for (var i = 0; i < $scope.uniqueStartDates.length; i++) {
if ($scope.uniqueStartDates[i].selected) {
index = i;
}
}
index--;
$scope.selectedDate = $scope.uniqueStartDates[index];
}
$scope.previousBtnDisabled = function () {
var isDisabled = false;
for (var i = 0; i < $scope.uniqueStartDates.length; i++) {
if ($scope.uniqueStartDates[i].selected) {
index = i;
}
}
if (index === 0) {
isDisabled = true;
}
else {
$scope.uniqueStartDates[index].selected = true;
isDisabled = false;
}
return isDisabled;
}
$scope.nextBtn = function () {
for (var i = 0; i < $scope.uniqueStartDates.length; i++) {
if ($scope.uniqueStartDates[i].selected) {
index = i;
}
}
index++;
$scope.selectedDate = $scope.uniqueStartDates[index];
}
$scope.nextBtnDisabled = function () {
var isDisabled = false;
for (var i = 0; i < $scope.uniqueStartDates.length; i++) {
if ($scope.uniqueStartDates[i].selected) {
index = i;
}
}
if ($scope.uniqueStartDates[index].value === currentDate) {
isDisabled = true;
}
else {
$scope.uniqueStartDates[index].selected = true;
isDisabled = false;
}
return isDisabled;
}