drupal: форма API, динамически скрывать или показывать поля на основе ввода

drupal: форма API, динамически скрывать или показывать поля на основе ввода

05.10.2012 11:42:07 Просмотров 50 Источник

Я создаю модуль формы. Одним из ранних полей является набор переключателей. По умолчанию выбрана первая кнопка. Далее у меня будет ряд выбранных полей. Одни должны быть видимыми, другие-невидимыми. Затем, когда пользователь выбирает другой переключатель, я хочу, чтобы разные поля выбора отображались или скрывались. Как я могу скрыть поле и метку по умолчанию и показать его позже в зависимости от того, какой переключатель (или другой вариант выбора) выбран?

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/12753010/drupal-form-api-dynamically-hide-or-show-fields-based-on-input#comment17232048_12753010
Я на своем мобильном телефоне, поэтому не могу найти ссылки с легкостью для вас. Проверьте форму API Referenc, и вы увидите свойство # ajax для установки. Вот как мы обычно это делаем. Но raw JavaScript или jquery также является вариантом.

Ответы - drupal: форма API, динамически скрывать или показывать поля на основе ввода / drupal: Form API, dynamically hide or show fields based on input

Является ответом!
Muhammad Reda

06.10.2012 05:48:15

Вы можете использовать #states собственность, чтобы добиться этого. Свойство #statesможет быть применено ко всем элементам API формы.

Вот ссылка на документацию с примером.

https://stackoverflow.com/questions/12753010/drupal-form-api-dynamically-hide-or-show-fields-based-on-input/12755994#comment17281897_12755994
Большое спасибо! Я просматривал api, но там много чего есть, поэтому это было легко пропустить.
https://stackoverflow.com/questions/12753010/drupal-form-api-dynamically-hide-or-show-fields-based-on-input/12755994#comment17290285_12755994
Очень рад, что это помогло :)... -Мухаммед.
https://stackoverflow.com/questions/12753010/drupal-form-api-dynamically-hide-or-show-fields-based-on-input/12755994#comment103899501_12755994
Вот еще одна ссылка на документацию от Lullabot, которая объясняет состояния API формы Drupal - lullabot.com/articles/form-api-states
Supriya Rajgopal

20.06.2013 10:16:57

Вы также можете использовать модуль "условные поля". Вот ссылка: https://drupal.org/project/conditional_fields Он предоставляет вкладку "управление зависимостями" при создании типа контента, где вы можете выбрать, какие поля должны быть видны, когда поле имеет определенное значение.

John

24.06.2014 09:30:51

простой пример использования #states: показывать поле выбора с именем 'item' только в том случае, если другое поле с именем 'type' имеет значение 'sell'

$form['item'] = array( 
        '#title' => t('Task Item'),
        '#type' => 'select',
        '#states' => array(
            // Only show this field when the value of type is sell.
            'visible' => array(
                ':input[name="type"]' => array('value' => 'sell'),
            ),
        ),
    );
https://stackoverflow.com/questions/12753010/drupal-form-api-dynamically-hide-or-show-fields-based-on-input/24378968#comment82799038_24378968
В каком крючке это будет использоваться?
Закрыть X