Я использую виджет Select2:
<?php echo $form->field($model, 'id_person')->widget(
\common\widgets\Select2::classname(),
[
'items' => \yii\helpers\ArrayHelper::map(\app\models\Persons::find()->all(), 'id_person', 'name_person'),
'placeholder' => '',
'class' => 'form-control',
'options' => [
'id' => 'idPerson' // For jQuery.
]
]
)
?>
Затем я использую jQuery, чтобы отключить его и установить значение, когда я читаю в этом вопросе StackOverflow :
function($) {
$("#idPerson").prop("disabled", true)
.select2('data', {id: 1, a_key: 'John'});
});
Он правильно отключил Select2, но значение не установлено, поэтому контроллер не получил значение .