【发布时间】:2017-04-24 12:30:28
【问题描述】:
我有一个这样的表格:
<form action="" method="post">
<input type="hidden" name="ndetails" value="<?php echo $ndetails; ?>"/>
<?php
for ($i=1; $i<=$ndetails; $i++)
{
?>
<textarea name="mydetails[]"></textarea>
<?php echo form_error('mydetails[]'); ?>
<?php
}
?>
</form>
在控制器中,我使用这样的表单验证:
for ($i=1; $i<=$this->input->post('ndetails'); $i++)
{
$this->form_validation->set_rules('mydetails[]', 'Day '.$i, 'trim|required');
}
问题是当文本区域超过 1 个时,form_error('mydetails[]') 仅显示最后一条错误消息。如何在每个文本区域之后单独显示错误?
【问题讨论】:
-
看stackoverflow.com/a/17802145/689579,好像可以设置数组键->
<textarea name="mydetails[<?php echo $i ?>]">...,<?php echo form_error('mydetails['.$i.']'); ?>,$this->form_validation->set_rules('mydetails['.$i.']', 'Day '.$i, 'trim|required');
标签: php codeigniter validation