Yii框架单选按钮列表

3

请问有谁能够解释一下,在表单提交时如何确定哪个单选按钮已被选中?

我正在使用CActiveForm::radioButtonList

2个回答

4

你不需要确定它。客户端会在POST数据中传输其值。

例如以下代码:

<?=$form->radioButtonList($person,'gender_code',array('m'=>'Male','f'=>'Female')); ?>

将会形成 POST[gender_code]=m 或者 POST[gender_code]=f


4

单选框列表反映了简单表单提交过程。例如,如果您有以下列表实现:

 <div class="form">
<?php echo CHtml::beginForm(); ?>     
    <div class="row">
        <?php
            echo CHtml::radioButtonList(
                    'registerMode',
                    'consumer',
                    array(
                        'consumer'=>'I am a FOODIE ',
                        'staff'=>'I want to give Services ',
                    ),
                    array('template'=>'<div class="rb">{input}</div><div class="rb">{label}</div><div class="clear">&nbsp;</div>')
                );
        ?>
    </div>     
    <div class="row">
        <?php echo CHtml::submitButton('Register',array('class'=>'submit')); ?>
    </div>

<?php echo CHtml::endForm(); ?>
</div><!-- form -->

当提交后,将生成以下输入内容。
array
(
    'registerMode' => 'consumer'
    'yt0' => 'Register'
)

它代表所选选项的名称或索引

下面的代码可以获取值

  if(isset($_POST['registerMode']))
         CVarDumper::Dump($_POST['registerMode'],100,true);

祝好运


1
+1 个模板,我最终得到了 'template' => '<div class="gRadio">{input}{label}</div>' :) - LihO
OP 询问了在 CActiveForm 中的 radioButtonList() 方法,而不是 CHtml。 - Foreever

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接