簡體   English   中英

Zend 框架形式與 jquery

[英]Zend Framework form with jquery

有人知道如何使用 Zend_Form 和 jquery 簡單地創建一個表單嗎? 我想使用 Zend_Form 來驗證表單,所以我不必在 JavaScript 和 PHP 中編寫表單的雙重腳本。

謝謝,

伊沃·特羅珀特

那里沒問題。

如果您使用自動加載,請將 ZendX_JQuery 添加到您的庫中。

然后根據您的需要擴展 ZendX_JQuery_Form。 在 class 的 init() 方法中做你的事情。

例如,我能夠創建一個具有常規 Zend_Form 驗證以及 JQuery 行為的 AutoComplete 字段,如下所示:

$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');

好吧,Zend_Form 不會為您生成任何客戶端 JavaScript 驗證器,如果這就是您的意思。

但是:您可以只在服務器上進行所有驗證,並使用 jQuery 掛鈎字段的更改事件,並對表單驗證進行 AJAX 化。

檢查那個樣本。

http://web.archive.org/web/20100814175334/http://steven.macintyre.name/zend-framework-jquery-form-validation-plugins/這里我們展示了如何在 Zend 框架中添加一個插件來處理客戶端驗證

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM