$this->addElement('text', 'projected-start', array(
'required' => false,
'validators' => array (
array('date', false, array('MM/dd/yyyy'))
),
'label' => 'Projected Start:',
'class' => 'form-date'
));
我正在扩展Zend_Form以创建新的自定义窗体。我试图使用上面的代码验证一个日期,但它只是不工作,没有什么显示,当我输入一个无效的输入。对此有帮助吗?使用Zend_Validate_Date通过Zend_Form验证日期的输入字段
编辑:
class Application_Form_CreateProject extends Zend_Form
{
public function init()
{ ... }
}
那延伸的形式的开始。
$form = new Application_Form_CreateProject();
$request = $this->getRequest();
if ($request->isPost()) {
if ($form->isValid($request->getPost())) {
echo "true";
}
}
$this->view->form = $form;
这是控制器
echo $this->form->setAction($this->url());
这就是视图
'bool(false) array(1){ [“projection-start”] => array(1){ [0] = > string(15)“dateFalseFormat” } } ' – user434366 2011-03-15 22:52:03
那么,那么工作。所以,你的表单的其余部分或'POST'数据必定有问题。尝试'var_dump'你的'POST'数据,看看你是否得到预期的结果,应该使你的表单失效。 – 2011-03-15 22:56:13
PS .:请用更多的代码扩大你的问题。最好使用代码来展示如何扩展Zend_Form并构建元素。此外,还介绍了如何实现表单以及如何传递数据。 – 2011-03-15 23:00:14