Как скрыть опции в списке выбора Angular JS?

0

У меня есть ng-repeat:

<option ng-repeat="year in data.dateList.year" ng-hide="year.id < limit" value="{{year.id}}" ng-selected="year.id == 0">
   {{year.value}}
</option>

И $scope.limit = 1991;

Я пытаюсь скрыть параметры по условию:

ng-hide="year.id < limit"

Это не работает

  • 1
    Вы не можете скрыть <option> кросс-браузер. IE например не поддерживает
Теги:

1 ответ

5
Лучший ответ

Попробуйте это, используя фильтр: show

ng-repeat="year in data.dateList.year | filter:show"

JS

$scope.show=function(year){
  return year.id > $scope.limit
}

если вы хотите получить индекс

Попробуйте это

$scope.show = function(year) {
    console.log(getIndex($scope.data.dateList.year, year))
    return year.id > $scope.limit
}

function getIndex(dataList, data) {
    var index = -1;
    dataList.some(function(item, i) {
        if (JSON.stringify(item) == JSON.stringify(data)) {
            index = i;
            return true;
        }
    });
    return index;
}
  • 0
    Как я могу отправить один параметр для функции шоу?
  • 0
    тебе не нужно он отправит экземпляр data.dateList.year в шоу из фильтра
Показать ещё 9 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню