使用CodeIgniter Form Validation类重新填充隐藏字段

时间:2012-04-24 12:47:15

标签: forms validation codeigniter repopulation

我不知道如何在不成功的表单验证后重新填充表单中的隐藏字段。

重新填充使用set_value()函数打印出其他字段的选定值,但是对于隐藏字段,值字段中已经打印了一些内容。

这是我的观看代码:

<? echo validation_errors();?>
<? echo form_open('projects/start');?>
<input type="hidden" name="project_type_id" value="<? echo $this->uri->segment(3);?>" >
<input type="text" name="site" value="<?echo set_value('site');?>">
<input type="submit" value="submit">
<?echo form_close();?>

2 个答案:

答案 0 :(得分:0)

在这里猜测你想在第一次加载时用URI段填充它,并且在表单提交时这不可用。

也许这会起作用

<input type="hidden" name="project_type_id" value="<? echo ($this->input->post())? set_value('project_type_id'): $this->uri->segment(3);?>" >

根据您构建网站的方式,也可以执行

<? echo form_open('projects/start/' . $this->uri->segment(3));?>

保留URI

答案 1 :(得分:0)

在第二个参数中传递URI段值,提交表单后将采用提交的值,重新提交提交的值而不是URI段值。

<?php echo validation_errors(); ?>
<?php echo form_open('projects/start'); ?>
<input type="hidden" name="project_type_id" value="<?php echo set_value('project_type_id', $this->uri->segment(3)); ?>" />
<input type="text" name="site" value="<?php echo set_value('site'); ?>" />
<input type="submit" value="submit" />
<?php echo form_close(); ?>

希望这会对你有所帮助。谢谢。