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
$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 に答える
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 に答える