我想将带有JQuery的新字段附加到表单并将其发送到Zend_Form我的代码现在是:
字段结构类:
<?php
namespace Companies\Form;
use Companies\Entity\Address;
use Zend\Form\Fieldset;
use Zend\InputFilter\InputFilterProviderInterface;
use Zend\Stdlib\Hydrator\ClassMethods as ClassMethodsHydrator;
class AddressField {
/**
* @var string
\ */
protected $name;
/**
* @param string $name
* @return Address
\ */
public function setName($name) {
$this->name = $name;
return $this;
}
/**
* @return string
\ */
public function getName() {
return $this->name;
}
}
class AddressFieldset extends Fieldset implements InputFilterProviderInterface {
public function __construct() {
parent::__construct('Address');
$this->setHydrator(new ClassMethodsHydrator(false))->setObject(new AddressField());
$this->add(array(
'name' => 'name',
'options' => array(
'label' => 'Address'
)
));
}
/**
* @return array
\ */
public function getInputFilterSpecification() {
return array(
'name' => array(
'required' => true,
)
);
}
}
该领域的模型:
$this->add(array(
'type' => 'Zend\Form\Element\Collection',
'name' => 'Address',
'options' => array(
'count' => 1,
'should_create_template' => false,
'allow_add' => false,
'template_placeholder' => '__placeholder__',
'target_element' => array(
'type' => 'Companies\Form\AddressFieldset'
)
)
));
我使用JQuery创建新字段,如何在表单提交后收到新字段?
我从这里得到了这个想法: http://zf2.readthedocs.org/en/release-2.1.5/modules/zend.form.collections.html#adding-new-elements-dynamically