1

我需要使用 jquery 的自动完成功能,并且我遇到了 ZendX_JQuery ,它具有这样的功能。

但是,我注意到整个 ZendX_JQuery 类有点旧(默认 jquery 版本是 1.3.2,jquery ui 1.7.1)。(见http://framework.zend.com/svn/framework/extras/branches/release-1.10/library/ZendX/JQuery.php

我应该使用它而不是我自己编写的代码来包含 jquery 库等,我应该使用 ZendX_JQuery_View_Helper_AutoComplete 类来实现这样的功能吗?

4

2 回答 2

2

ZendX 仍然处于活动状态。我使用 jQueryUI 进行自动完成。以下是使用示例。

jQuery 配置。

$view->jQuery()->setLocalPath('http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js')
                       ->enable()
                       ->setUiLocalPath('http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.0/jquery-ui.min.js')
                       ->uiEnable()
                       ->addStylesheet('/ui/css/blitzer/jquery-ui-1.8.custom.css')

查看文件。

echo $this->autoComplete($id, $value, $params, $attribs);

http://jqueryui.com/demos/autocomplete/

http://framework.zend.com/manual/en/zendx.jquery.view.html

于 2010-06-06T13:20:58.417 回答
2
$view->jQuery()
         ->setVersion('1.4.2')
         ->enable()
         ->setUiVersion('1.8.1')
         ->uiEnable()
         ->addStylesheet('http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/themes/ui-lightness/jquery-ui.css');

表单元素:

$el = $this->createElement('autoComplete', 'movie_id', 
        array(
            'cols'  => 30,
            'label' => 'Movie ID или Название фильма. Набрать 3 символа и подождать.',
            'required' => true,
            'autocomplete' => 'off',
            'filters' => array('StringTrim'),
            'validators' => array(
                'Int',
                array('Db_RecordExists', false, array(
                    'model' => 'Movies_Model_Movie',
                    'field' => 'id'
                ))
            ),
            'jQueryParams' => array(
                'source'    => $this->getView()->movieLinker()->crudListAutocompleteMovieId(),
                'minLength' => 3,

            )
        )
    );
于 2010-06-06T15:15:57.247 回答