yii 自定義form樣式適應現成模板
需求:想使用下邊的樣式但是使用yii中的表單樣式會
<?= $form->field($model, 'attribute_code')->textInput()->label('attribute代碼名稱') ?>
帶有大量無用的div和clas樣式,想要自定義可以通過ActiveForm中的fieldConfig屬性實現如下邊的列子實現,相比
<?= Html::activeInput('text',$model,'icon', ['class'=>'form-control']);?>
這種改造的在其中外圍加入大量div和樣式的減少了代碼量

<?php $form = ActiveForm::begin([ 'fieldConfig'=>[ 'template'=> "<div class='col-lg-2 col-md-2 col-sm-4 col-xs-5 form-control-label'>{label}</div>\n <div class='col-lg-10 col-md-10 col-sm-8 col-xs-7'><div class='form-group'><div class='form-line'>{input}</div></div></div>\n {hint}\n{error}", 'labelOptions'=>[], 'labelOptions' => ['class' => null],//取消標簽上的class屬性 'inputOptions' => ['class'=>null],//取消input上自帶的class屬性 'options'=>['class'=>'row clearfix'], ], 'options' => ['onsubmit'=>'return refactorForm();'],//在form表單中定義onsubmit事件 'validateOnSubmit' => false,//解決當一次點擊提交按鈕時會對定義的onsubmit事件執行兩次問題,關閉框架自帶的觸發程序 ]); ?>

浙公網安備 33010602011771號