У меня есть следующий dropDownList
<?= $form->field($model, 'moradaalternativa')
->dropDownList(
[
'Não' => 'Não',
'Sim' => 'Sim'],
['prompt'=>'Faça a sua escolha'],
);
?>
То, что я пытаюсь сделать, это:
Если значение равно = Sim, то некоторые другие поля формы, которые скрыты классом css, отображаются под dropDownList, а если значение равно = Não, то поля формы снова скрываются со страницы.
Я знаю, что есть свойство ‘onchange’, такое как javascript, но я не знаю, как применить его к этому эффекту или даже если мне нужно его использовать.
Есть идеи?
Все довольно просто, все что вам нужно это:
$(document).ready(function () {
$(document.body).on('change', '#your-id', function () {
var val = $('#your-id').val();
if(val > 0 ) {
$('.class').hide();
} else {
$('.class').show();
}
});
});
И просто измените имена по мере необходимости. Для Yii2 вы можете обернуть его, затем вы можете просто поместить код в файл представления, но лучше поместить его в файл JS:
<?php
$script = <<< JS
code here
JS;
$this->registerJs($script);
?>
Других решений пока нет …