【发布时间】:2016-12-10 22:35:38
【问题描述】:
我有一个使用 YII2 ActiveForm 生成的表单。如果我选择某些选项,我需要在某些字段上,或者如果我选择其他选项,则需要将它们删除。
例如我有一个下拉 AccountType,有两个选项“个人”和“公司”。 如果用户选择“个人”,表单上的某些字段需要离开说公司名称,而其他一些字段需要出现,例如名字,姓氏。最初显示表单时,只有 Account Type 字段。
下面是我目前的代码
<?php
$form = ActiveForm::begin(['id' => 'account-setup-form']); ?>
echo $form->field($modelAccMain, 'account_type')
->widget(Select2::classname(), [
'data' => $accountTypeArray,
'options' => ['placeholder' => 'Select account type'],
]);
echo $form->field($modelUsers, 'firstname')->textInput()
->hint('')->label('First Name');
echo $form->field($modelUsers, 'lastname')->textInput()
->hint('')->label('Last Name');
<?php ActiveForm::end(); ?>
非常感谢任何帮助。
【问题讨论】:
-
要在服务器中执行此操作,您需要在每次用户更改“AccountType”字段的值时提交表单。这有点令人恼火。我建议为此使用 JS。您可以编写一些代码来根据所选值显示/隐藏表单的某些部分。
标签: php yii2 yii2-advanced-app