0

我有一个foreach显示许多具有相同操作的表单,以不同的 id 结尾。但是,标签<form>只是以第一种形式出现。所有其他的,这些字段都会出现,但我没有<form> 尝试将idfor 表单放在循环中。但不起作用。

编码:

    <?php echo $this->Form->create(null, array(
                'url' => array('controller' => 'menus', 'action' => 'aprovar', $procuracao['Attorney']['id']), 'id' => $procuracao['Attorney']['id']
                )); ?>
                <div class="control-group">
                <label class="control-label">Alçada:</label>
                <div class="controls">
                <?php echo $this->Form->input ('alcada', array('type' => 'select', 'label' => FALSE, 'options' => array(
                                                                                 'Até 10.000' =>  'Até 10.000',
                                                                                 'Até 50.000' => 'Até 50.000',
                                                                                 'Acima de 100.000' => 'Acima de 100.000',
                                                                                 'Acima de  500.000' => 'Até 500.000',),

                                                                                 'empty' => 'Selecione')); ?>
                </div>
                </div>

                <div class="control-group">
                <label class="control-label">Validade:</label>
                <div class="controls">
                <?php echo $this->Form->input('validade', array('label' => FALSE, 'type' => 'text')); ?>
                </div>
                </div>
                <?php echo $this->Form->submit('Ok', array('class' =>'btn btn-success pull-left', 'div' => false)); ?>
                </div>

“Alçada”和“Validade”字段正确显示。但是标签<form>只出现在第一个元素中。

4

1 回答 1

0

您没有结束表格。

echo $this->Form->create(null, array(
            'id' => 'your-form-'.$i, //that $i is the index of the foreach, for example
            'url' => array('controller' => 'menus', 'action' => 'aprovar', $procuracao['Attorney']['id']), 'id' => $procuracao['Attorney']['id']
            ));
//all inputs and other stuff
echo $this->Form->end(array('label'=>'Ok', 'class' =>'btn btn-success pull-left', 'div' => false));

foreach您正在使用的所有内容。

是文档中该函数的参考。但基本上,它做到了这一点

关闭 HTML 表单,清理由 FormHelper::create() 设置的值,并在适当的地方写入隐藏的输入字段

于 2013-08-13T15:16:40.920 回答