kolossus
(Mbook)
1
Имеются следующие модели (в таблицах по два поля):
model1
id1
name1
model2
id2
name2
И главная модель:
model_main
id
trigger
name_id
В форме выводится чекбокс - trigger и селект - выбор в поле name_id
Если trigger включен - в селекте должны быть данные из модели1 (id1 => name1), иначе - данные из модели2 (id2 => name2).
Если делаем вывод - тут не вопрос, данные триггера получили, получили данные из нужной модели - вывели name.
Как сделать так, чтобы в форме (при создании/редактировании) при изменении значений чекбокса - перегружались значения в селект?
(если интересно - в задании - в зависимости от триггера - выбор из списка сотрудников или из списка подразделений)
Спасибо.
andy_s
(Arekandrei)
2
Если не хочется мучиться с ajax’ом, то подгрузить сразу оба списка, а при клике на чекбокс показать/спрятать нужный список (простой javascript).
kolossus
(Mbook)
3
Хотелось бы как-нибудь красивее это сделать, более в духе yii, что-ли
сейчас вывод триггера вот так:
<?php echo $form->checkBox($model,'trigger'); ?>
как правильнее сюда подключить javascript onChange типа такого?
andy_s
(Arekandrei)
4
В духе Yii будет, если, наверное, создать виджет или грузить содержимое списка ajax’ом 
Но в духе KISS будет что-то вроде:
<?php echo $form->checkBox($model, 'trigger', array('onchange'=>'loadList(this.value)')); ?>
kolossus
(Mbook)
5
Спасибо, видимо так действительно будет лучше и проще.
P.S.: в духе KISS - понравилось
P.P.S.: и лучше наверное (this.checked)