我需要使用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类来实现这样的功能吗?
答案 0 :(得分: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);
答案 1 :(得分: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,
)
)
);