2015-01-27 09:21:42 9084次浏览 2条回答 0 悬赏 20 金钱

如何在activeform中一行显示多个field,自动生成的都是一行一个

<?= $form->field($model, 'kf_jiaoda')->textInput() ?>

<?= $form->field($model, 'kf_yanzhong')->textInput() ?>

<?= $form->field($model, 'kf_hongxian')->textInput() ?>

最佳答案

  • gengshenghong 发布于 2015-01-27 10:25 举报

    这个和activeform没有任何关系。。。和你的布局有关,这两行不过是生成input的html tag而已。因为yii是用的bootstrap作为前端,你可以看看bootstrap的布局就很容易解决(http://getbootstrap.com/css/#grid),建议系统的学习一下bootstrap。

    ok,如何解决你的问题,以yii-basic中的contact.php的那个表单来说:

    `

        <div class="col-lg-5">
            <?php $form = ActiveForm::begin(['id' => 'contact-form']); ?>
            <div class="row">
              <div class="col-lg-6">
                  <?= $form->field($model, 'name') ?>
              </div>
              <div class="col-lg-6">
                  <?= $form->field($model, 'email') ?>
              </div>
            </div>
                <?= $form->field($model, 'subject') ?>
                <?= $form->field($model, 'body')->textArea(['rows' => 6]) ?>
                <?= $form->field($model, 'verifyCode')->widget(Captcha::className(), [
                    'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>',
                ]) ?>
                <div class="form-group">
                    <?= Html::submitButton('Submit', ['class' => 'btn btn-primary', 'name' => 'contact-button']) ?>
                </div>
            <?php ActiveForm::end(); ?>
        </div>
    </div>`
    
    觉得很赞
  • 回答于 2015-01-27 10:27 举报

    忘记说了,上面的修改让name和email在同一行了,其余代码没修改。
    另外,其实contact.php中那个输入验证码本来就是同一行的,其也是一个道理,就是bootstrap的布局的结果。

    1 条回复
    回复于 2018-03-15 16:00 回复

    谢谢,帮到我了。

    觉得很赞
您需要登录后才可以回答。登录 | 立即注册
wgc1221
助理

wgc1221

注册时间:2013-12-26
最后登录:2015-01-30
在线时长:4小时27分
  • 粉丝0
  • 金钱0
  • 威望10
  • 积分140

热门问题