...

Скрыть элемент (кнопка, панель со всем содержимым)

Тема в разделе "Разработчикам", создана пользователем also28, 22 фев 2019.

  1. also28

    also28 New Member

    Возможно ли скрыть кнопку, или целую панель со всем содержимым, по аналогии со скрытием отдельного свойства?
    Пример: на странице присутствует отдельная панель "Котировочная заявка", с элементами (список файлов, задачи по заявке и тд - всего около 30 наименований). Я бы хотел поместить на страницу отдельный переключатель "Дополнительная информация", имеющий тип "Да/нет", и значение по умолчанию "Нет". Если пользователь нажимает "Да", то скрипт отображает скрытую панель целиком.

    Возможно ли это?
     
  2. also28

    also28 New Member

    как вариант - скрыть элемент по его id, например. все необходимые свойства находятся в контейнере, id которого известен
     
  3. pushkarev

    pushkarev Active Member

    Можете использовать сворачиваемую панель для такого сценария, по сути будет требующееся вам поведение, если панель свернута, то поля не видно пользователю, если развернута, то видно.
    Механизма управлять видимостью панелей (надписей, колонок и др. разметочных элементов формы) через серверные обработчики событий в элме нет (по аналогии с обработчиками событий изменения значений поля). Логику можно реализовать только через javascript на клиентской стороне через кастомную razor-форму.
     
    1 это нравится
  4. alexfuse

    alexfuse Member

    Как пример мы используем JS так в Razor форме
    Код:
    @{
    bool isAdmins = UserGroupManager.Instance.GetUsersByGroup(UserGroupManager.Instance.Load("Администраторы").Id).Any(a => a == AuthenticationService.GetCurrentUser<EleWise.ELMA.Security.Models.IUser>().Id);
         if(!isAdmins)
         {
            <script>
                document.getElementById('FilterTree_container').style.display = "none";
                document.getElementsByClassName('t-treeview-linkcontainer')[0].style.display = "none";
            </script>
         }
    }
     

Поделиться: