Требуется отфильтровать ненужные значения из списка значений поля_2, при выборе значения из поля_1.
Поле_1 - это список текстовый
Поле_2 - это термины словаря
Стоит задача через свой модуль или модуль какой-нить скрыть ненужные значения поля_2 для некоторых значений поля_1.
Комментарии
Хочется скрыть от греха подальше значения поля_2, которые и не должны даже выбираться для значений поля_1.
Посмотрите как это сделано для формы редактирования типов материалов. Например, когда выбираем тип поля, соответствующие виджеты видны, другие нет.
Виджеты это одно. А значения это другое. как поля показываться и не показывать ясно. Но конкретный пример для значений хочется увидеть, найти.
А чем пример котрый я привел плох? Там разве не оно? Что означает "конкретные значения"?
Наверное я что то не понял в вашем вопросе. Или вы в моем ответе. Одно из двух.
для каждого из значений поля1 свой список значений в поле2
Для каждого из значений "Тип данных для хранения" свой список значений "Вид элемента формы для редактирования данных".
Реализация находится вот тут ../drupal_root/modules/field_ui/field_ui.js
Как то сложно это. Мне бы что то типа
если в таком то поле выбрано то-то то в другом поле грузить такие-то значения, ну или тупо скрыть определенные значения css во втором поле, при выборе в первом поле определенных значений.
Ну не знаю.
Перед тем как показать форму пользователю, создайте массив с возможными значениями
<?php
$form['#attached']['js'][] = array(
$values = array(
1 => array(1, 2, 3, 4),
2 => array(13, 24, 35, 46),
3 => array(12, 23, 34, 45),
4 => array(15, 26, 37, 48),
);
'data' => array('values' => $values),
'type' => 'setting'
);
?>
На стороне клиента обрабатываете событие изменения первого элемента. В обработчике соответственно смотрите какое значение имеет выбранный элемент, и во второй (зависимы от первого) элемент суёте соответствующие значения из values.
Вроде бы достаточно просто. Как ещё проще я не знаю. Может кто-то другой подскажет.