Создавайте элементы управления динамически, используя angularjs

Я новичок в angularjs, может кто-нибудь помочь мне создать динамические элементы управления для расширенного поиска с использованием угловых js.

Например, у нас есть кнопка "Расширенный поиск", после нажатия которой необходимо загрузить некоторые базовые элементы управления фильтрами, а после нажатия кнопки "+" или "-" dymanicaaly загрузить другие элементы управления фильтрами с опцией "И" / "ИЛИ".

Нам нужно что-то вроде скриншота ниже. Для поиска по умолчанию будет доступен выпадающий список типов данных и выбор даты. если человек нажимает на опцию предварительного поиска фильтра появится на экране. затем нам нужно добавить один выпадающий список в качестве динамического элемента управления, и если элемент выпадающего меню подходит для текстового поля, тогда начните с конца, должен прийти конец, если элемент подходит для даты, то должен появиться элемент управления datepicker. После этого пользователь также может добавить дополнительные условия поиска, нажав на кнопку плюс или минус.

1 ответ

В контроллере есть массив, содержащий параметры вашего фильтра:

$scope.filters = []

Добавить клик на Расширенный поиск:

$scope.onAdvancedSearchClick = function() {
    $scope.advancedSearch = true;
    $scope.onClickPlus(); // add initial item
}

$scope.onClickPlus = function() {
    $scope.filters.push({text: 'some text', type: 'AND'});
}

$scope.onClickMinus = function() {
    $scope.filters.pop();
}

Затем, на ваш взгляд, есть ng-repeat, которое перебирает массив фильтров и создает текстовый ввод и кнопку "и / или" для каждого из них.

Я не уверен, если вы хотите, и / или для ряда или верхнего уровня контроля.

Другие вопросы по тегам