我的表单和单选按钮有点麻烦,输入文本我这样做:
<?php echo form_input('lastname', set_value('lastname'), 'id=lastname'); ?>
<?php echo form_error('lastname'); ?>
当验证运行并且填写的输入字段返回值时...我正在寻找的是用单选按钮执行此操作的方法
<tr><td><?php echo form_label('Gender: ', 'gender'); ?></td><td><?php echo form_label('Male', 'male') . form_radio('gender', 'M', '', 'id=male'); ?><br><?php echo form_label('Female', 'female') . form_radio('gender', 'F', '', 'id=female'); ?></td><td><?php echo form_error('gender'); ?></td></tr>
你可以看到我的单选按钮的值都已经是F或M .....我如何选择返回的按钮?
答案 0 :(得分:9)
来自用户指南:https://www.codeigniter.com/user_guide/helpers/form_helper.html
form_radio()
此函数在所有方面都与form_checkbox()相同 上面的函数除了将其设置为“无线电”类型。
进一步阅读:
form_checkbox()
允许您生成复选框字段。简单的例子:
echo form_checkbox('newsletter', 'accept', TRUE);
会产生:
<input type="checkbox" name="newsletter" value="accept" checked="checked" />
第三个参数包含一个布尔值TRUE / FALSE来确定是否 应该检查盒子。
所以在你的情况下,它可能是这样的:
// Pass boolean value to third param
// Example:
$radio_is_checked = $this->input->post('gender') === 'F';
echo form_radio('gender', 'F', $radio_is_checked, 'id=female');
由于set_radio()
只返回一个字符串checked="checked"
,如果你真的想要它,你可以将它楔入第四个参数,但它会产生一些难看的代码:
echo form_radio('gender', 'F', NULL, 'id="female" '.set_radio('gender', 'F'));
答案 1 :(得分:5)
我使用三元运算符。 假设你得到的回报值是&#34; M&#34; (男)。我正在制作$ selected变量,并假设它的值为M.
<?php $selected = 'M'; ?>
<tr><td>
<?php echo form_label('Gender: ', 'gender'); ?></td><td>
<?php echo form_label('Male', 'male') . form_radio(array('name' => 'gender', 'value' => 'M', 'checked' => ('M' == $selected) ? TRUE : FALSE, 'id' => 'male')); ?><br>
<?php echo form_label('Female', 'female') . form_radio(array('name' => 'gender', 'value' => 'F', 'checked' => ('F' == $selected) ? TRUE : FALSE, 'id' => 'female')); ?></td><td>
<?php echo form_error('gender'); ?>
</td></tr>
答案 2 :(得分:2)
这对我很有用。虽然我没有使用form_helper,但这更容易。每个人都面临着为性别领域投入的问题:)
<input id="gender" name="gender" type="radio" class="" <?php if($gender=='0') echo "checked='checked'"; ?> value="0" <?php echo $this->form_validation->set_radio('gender', 0); ?> />
<label for="gender" class="">Male</label>
<input id="gender" name="gender" type="radio" class="" <?php if($gender=='1') echo "checked='checked'"; ?> value="1" <?php echo $this->form_validation->set_radio('gender', 1); ?> />
<label for="gender" class="">Female</label>
<input id="gender" name="gender" type="radio" class="" <?php if($gender=='2') echo "checked='checked'"; ?> value="2" <?php echo $this->form_validation->set_radio('gender', 2); ?> />
<label for="gender" class="">Others</label>
我希望它会帮助某人:)
答案 3 :(得分:1)
这种作品很有用......
<tr><td><?php echo form_label('Gender: ', 'gender'); ?></td><td><?php echo form_label('Male', 'male') . form_radio(array("name"=>"gender","id"=>"male","value"=>"M", 'checked'=>set_radio('gender', 'M', FALSE))); ?><br><?php echo form_label('Female', 'female') . form_radio(array("name"=>"gender","id"=>"female","value"=>"F", 'checked'=>set_radio('gender', 'F', FALSE))); ?></td><td><?php echo form_error('gender'); ?></td></tr>
写了我的单选按钮
<?php form_radio(array("name"=>"gender","id"=>"female","value"=>"F", 'checked'=>set_radio('gender', 'F', FALSE))); ?>
答案 4 :(得分:-2)
$_fldProyectoMostrar = array(
"id" => "_FLDPROYDER",
"name" => "_FLDPROYDER"
);
<?php echo form_radio($_fldProyectoMostrar, "FALSE", set_radio("_FLDPROYDER", "FALSE", TRUE)); ?>NO
<?php echo form_radio($_fldProyectoMostrar, "TRUE", set_radio("_FLDPROYDER", "TRUE", FALSE )); ?>SI
Donde el el segundo valor del set radio,debe ser = al string value del form_radio