antqa/ajax-autocomplete-bundle
Composer 安装命令:
composer require antqa/ajax-autocomplete-bundle
包简介
Ajax AutoComplete Bundle
关键字:
README 文档
README
Install
AntQaAjaxAutoCompleteBundle is installed using Composer.
$ php composer.phar require piotrantosik/ajax-autocomplete-bundle
Enable bundle
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new AntQa\AjaxAutoCompleteBundle\AntQaAjaxAutoCompleteBundle(), ); }
Example usage
Quick usage with select2 3.x (documentation):
$('input').select2({ multiple: true, minimumInputLength: 2, ajax: { url: '/find', dataType: 'json', data: function (term) { return { q: term }; }, results: function (data) { return { results: data }; } }, formatResult: function(object) { return object.name; }, formatSelection: function(object) { return object.name; }, initSelection: function(element, callback) { var ids=$(element).val(); if (ids !== '') { $.ajax('/get/' + ids, { dataType: 'json' }).done(function(data) { callback(data); }); } } });
Example routes:
find_objects: pattern: /find defaults: { _controller: Acme:Default:find } condition: "request.headers.get('X-Requested-With') matches '/XmlHttpRequest/i'" options: expose: true get_objects: pattern: /get/{ids} defaults: { _controller: Acme:Default:get } options: expose: true
Example controllers action:
use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\JsonResponse; use Doctrine\ORM\Query\Expr; public function findAction(Request $request) { $expr = new Expr(); $objects = $this->getManager() ->getRepository('Acme:Object') ->createQueryBuilder('o') ->select('o.name, o.id') ->where($expr->like('o.name', ':name')) ->setParameter('name', sprintf('%s%%', $request->query->get('q', ''))) ->getQuery() ->getArrayResult(); return new JsonResponse($objects); } public function get($ids) { $expr = new Expr(); $ids = explode(',', $ids); $objects = $this->getManager() ->getRepository('Acme:Object') ->createQueryBuilder('o') ->select('o.id, o.name') ->where($expr->in('o.id', ':ids')) ->setParameter('ids', $ids) ->getQuery() ->getArrayResult(); return new JsonResponse($objects); }
License
统计信息
- 总下载量: 1.53k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-11-17