根据下拉值,改变yii2 activeform中某个属性的标签名和值

According to the dropdown value, change the label name and value of an attribute in yii2 activeform

我的活动形式:

下拉菜单

<?php
if($model->userType!="VENDOR" && $model->userType!="COMPANY"){
    echo $form->field($model, 'fixedOrPercentagevendor')->dropDownList([0=>'Percentage',1=>'Amount']);

}
?>

我需要用 onchange 完成它,

当我选择Percentage时,它应该显示

<?= $form->field($model, 'vendorcommision')->label('Vendor Fee (%)')->textInput(['type' => 'number','value'=>'20', 'id'=>'percentage']); ?>

当我选择Amount时,它应该显示

<?= $form->field($model, 'vendorcommision')->label('Vendor Fee (LKR)')->textInput(['type' => 'number','value'=>'1000','id'=>'amount']); }?>

请注意,两个下拉选项在模型中呈现相同的属性 vendorcommision,只有标签名称和值不同。

提前致谢。

解决了我的问题。

<?php
if($model->userType!="ADMIN" && $model->userType!="HOST"){
    echo $form->field($model, 'fixedOrPercentagevendor')->dropDownList([0=>'Amount',1=>'Percentage'],
            [
                'onchange'=>'if($(this).val() == 1){
                    $("#percentage").val("20");
                    $("#ftype").html("Vendor Fee (%)");
                    }
                    else{
                    $("#percentage").val("1000");
                    $("#ftype").html("Vendor Fee (LKR)");}'
            ]);

    echo $form->field($model, 'vendorcommision',['template'=>"{label}\n<div>{input}</div>\n{hint}\n{error}",'labelOptions'=>['label'=>'Vendor Fee','id'=>'ftype']])
            ->textInput(['type' => 'number','id' => 'percentage']);
}
?>