在视图中具有相同ID的多个项目 - ZF2

时间:2015-10-29 15:40:27

标签: php doctrine-orm zend-framework2

我正在使用ZF2和Doctrine构建一个Web应用程序。我有一个包含基本表单的视图,用户可以向其添加字段集的多个实例,通过HTML模板和js克隆添加字段集。我们正在使用Doctrine水合器和cascade = persist来写入dB。这一切都在工作,但我担心在添加字段集时会导致多个具有相同ID的项目违反w3标准。有没有人可以解决这个问题?或者在这种情况下是否可以接受?

一个fieldset元素的示例:

$this->add(array(
        'name' => 'glassAssemblyID',
        'attributes' => array(               
            'type'=> 'hidden',
            'id' => 'glassAssemblyID',
        ),
    ));

非常感谢 詹姆斯

2 个答案:

答案 0 :(得分:0)

这很简单。只需将您的代码更改为:

$this->add(array(
    //'name' => 'glassAssemblyID',
    'attributes' => array(               
        'type'=> 'hidden',
      //'id' => 'glassAssemblyID',
    ),
));

没有必要推出一个明显没有被使用的元素id。

如果您确实因为某些原因确实需要ID,那么请为您的ID输入类似EntityType-id的内容。

答案 1 :(得分:0)

您应该在克隆元素后在JavaScript中设置ID。