任何人都知道如何使用Zend_Form和jquery简单地创建一个表单?我想使用Zend_Form来验证表单,所以我不需要在JavaScript和PHP中使用双脚本表单.
谢谢,
Ivo Trompert
没问题.
如果您使用自动加载,请将ZendX_JQuery添加到您的库中.
然后根据您的需要扩展ZendX_JQuery_Form.在你的类的init()方法中做你的东西.
例如,我能够创建一个AutoComplete字段,它具有常规的Zend_Form验证和JQuery行为,如下所示:
$elem = new ZendX_JQuery_Form_Element_AutoComplete( 'query', array('Label' => 'Search', 'required'=>true, 'filters'=>array('StripTags'), 'validators'=>array( array('validator'=>'StringLength', 'options'=>array('min'=>'3'), 'breakChainOnFailure'=>true ), array('Alnum') ) ) ); $elem->setJQueryParams(array('data' => array(), 'url' => 'my_autocomplete_callback.php', 'minChars' => 1, 'onChangeInterval' => 500, ) );
然后我甚至改变了这样的默认装饰器:
$elementDecorators = array( array('UiWidgetElement', array('tag' => '')), array('Errors', array('tag' => 'div', 'class'=>'error')), array('Label'), array('HtmlTag', array('tag' => 'div')), ); $elem->setDecorators($elementDecorators);
最后添加到我的表单(记住我在init()中,所以我将通过$ this解决它):
$this->addElement($elem);
你在那里,魔术已经完成了.
PS:不要忘记在引导程序中添加以下内容:
$view->addHelperPath('ZendX/JQuery/View/Helper/', 'ZendX_JQuery_View_Helper');