我正在调用视图
function index() {
$this->load->helper("form");
$this->load->library("form_validation");
$this->load->view("index");
}
然后我有
<?php echo form_open(); ?>
<input type="radio" name="radioname" value="x" <?php echo set_radio("radioname", "x", true); ?> />
<input type="radio" name="radioname" value="y" <?php echo set_radio("radioname", "y"); ?> />
</form>
在第一次加载时,我检查了第一个收音机。如果我发布表单,则值会成功转到$this->input->post()
。但没有一个收音机盒被检查。如果我没有加载验证,则代码可以正常工作。
我挖了代码,发现如果加载form_validation
,它的行为会有所不同。
$OBJ =& _get_validation_object();
if ($OBJ === FALSE)
{
// returns formhelper set_radio
}
// this doesn't make sense for me
return $OBJ->set_radio($field, $value, $default);
如果form_validation
已加载,则会从set_radio
执行$OBJ
,但不起作用。
在这种情况下,$OBJ
究竟是什么?我需要做些什么才能让它发挥作用?
答案 0 :(得分:4)
您需要将假规则添加到radioname,例如
$this->form_validation->set_rules("radioname", "", "trim");