PHPackages                             culabs/jquery-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. culabs/jquery-bundle

AbandonedSymfony-bundle

culabs/jquery-bundle
====================

Easy integration of jquery into symfony2

81691[1 PRs](https://github.com/aprezcuba24/CULabsjQueryBundle/pulls)PHP

Since Oct 15Pushed 4y ago1 watchersCompare

[ Source](https://github.com/aprezcuba24/CULabsjQueryBundle)[ Packagist](https://packagist.org/packages/culabs/jquery-bundle)[ RSS](/packages/culabs-jquery-bundle/feed)WikiDiscussions master Synced 5d ago

READMEChangelogDependenciesVersions (1)Used By (0)

```
CULabsjQueryBundle
==================

AutocompleteDoctrineType
------------------------

Este widget permite utilizar el widget "autocomplete" de jQuery.
Para poner un ejemplo supongamos que tenemos una entidad con el nombre "AcmeDemoBundle:User" y tiene una relación de "uno a mucho" con una entidad "AcmeDemoBundle:Tienda". En la clase "TiendaType" adicionamos el siguiente campo al "builder"

    $builder->add('gestor', 'jquery_doctrine_autocomplete', array(
        'url'   => 'autocomplete_user',
        'class' => 'AcmeDemoBundle:User',
    ));

El campo "url" es el que contiene el nombre de la ruta a utilizar en el autocompletamiento.
El siguiente paso es crear la ruta "autocomplete_user". El bundle contiene una controladora genérica para el trabajo con cualquier entidad. Si lo crees necesario puedes utilizar una controladora própia o extender esta.

    autocomplete_user:
    pattern:  /autocomplete_user
    defaults:
      _controller: CULabsjQueryBundle:AutocompleteDoctrine:index
      class: CULabsMainBundle:User
      method_for_query: autocomplete

El campo "method_for_query" es utilizado para indicar que método de la clase repositorio será utilizado para hacer la consulta. En el siguiente fragmento de código se ve un ejemplo.

    class UserRepository extends EntityRepository
    {
        public function autocomplete(array $param)
        {
            $qb = $this->createQueryBuilder('user');

            return $qb->where($qb->expr()->like($qb->expr()->concat('user.name', $qb->expr()->concat('\' \'', 'user.lastname')), $qb->expr()->literal(sprintf('%%%s%%', $param['term']))))
                      ->setMaxResults($param['limit'])
                      ->getQuery()
                      ->execute()
            ;
        }
    }

AutocompleteType
----------------

Este Widget permite el autocompletamiento dado un conjunto de datos definidos. Para usarlo solo hay que adicionar el siguiente código en el método "buildForm" de un formulario.

    $builder->add('usuario', 'jquery_autocomplete', array(
        'choices' => array(
            'admin' => 'Administrador',
            'user1' => 'Usuario1',
            'user2' => 'Usuario2'
        )
    ));

DatepickerType
--------------

Permite la creación de datepicker

    $builder->add('fecha', 'jquery_datepicker')

DatetimepickerType
------------------

Permite la creación de datepicker, usando el plugin "http://trentrichardson.com/examples/timepicker/"

    $builder->add('fecha', 'jquery_datetimepicker')

jq_remote_form
--------------
Esta función de twig permite enviar a través de ajax un formulario, que puede también contener ficheros. Utiliza el plugin de jQuery "http://malsup.com/jquery/form/". El uso básico es el siguiente.

      {{ form_widget(form) }}

      Registrando...

    {{ jq_remote_form('formulario', {
        'update':   'zona_update',
        'url':      path('la_ruta_a_utilizar'),
        'complete': "jQuery('#indicador').hide();",
        'loading':  "jQuery('#indicador').show();",
    }) }}

SliderType
----------
Incluido el Widget slider.

    $builder->add('numero', 'jquery_slider')

Tabs Widget
-----------
A través del uso de "etiquetas" de twig se puede crear un componente "Tab" de jQuery. Acontinuación tres ejeplos.

    {# Tabs simple con tres pestañas  #}
    {% jqtabs %}
        {% jqtabitem title 'One'|trans %}
            {{ 'One'|trans }}
        {% endjqtabitem %}
        {% jqtabitem title 'two'|trans %}
            {{ 'Two'|trans }}
        {% endjqtabitem %}
        {% jqtabitem title 'Three'|trans %}
            {{ 'Three'|trans }}
        {% endjqtabitem %}
    {% endjqtabs %}

    {# Ejemplo de paso de valores para la configuracion y manipulación del objeto con javascript #}
    {% jqtabs config { 'event': '"mouseover"' } js_name 'my_tab' %}
        {% for i in 1..5 %}
            {% jqtabitem title 'title ' ~ i %}
                {{ i }}
            {% endjqtabitem %}
        {% endfor %}
        {% jqtabitem title 'Last'|trans %}
            {{ 'Last'|trans }}
        {% endjqtabitem %}
    {% endjqtabs %}

        my_tab.bind("tabsadd", function (event, ui) {
            $( ui.panel ).append( "body" );
        });
        my_tab.tabs( "add", "#tabs-q", 'title' );

    {# Ejemplo de Tabs anidados #}
    {% jqtabs %}
        {% jqtabitem title 'One'|trans %}
            {{ 'One'|trans }}
        {% endjqtabitem %}
        {% jqtabitem title 'two'|trans %}
            {{ 'Two'|trans }}
        {% endjqtabitem %}
        {% jqtabitem title 'Three'|trans %}
           {% jqtabs %}
               {% for i in 1..5 %}
                   {% jqtabitem title 'title ' ~ i %}
                      {{ i }}
                   {% endjqtabitem %}
               {% endfor %}
           {% endjqtabs %}
        {% endjqtabitem %}
    {% endjqtabs %}

Dialog Widget
-------------
A través del uso de "etiquetas" de twig se puede crear un componente "Dialog" de jQuery. Acontinuación tres ejeplos.

    {# Ejemplo simple #}
    {% jqdialog config {'title':'"Demo"'} %}
        Text in the body
    {% endjqdialog %}

    {# Paso de más parámetros de configuración y creación de un botón. #}

        function my_function()
        {
            $( this ).dialog( "close" );
        }

    {% jqdialog config {
        'title':'"Demo"',
        'modal':'true',
        'buttons':'{Ok:my_function}'
    } js_name 'my_dialog' %}
        Text in the body
    {% endjqdialog %}
```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/8a1d43f811ba15bafc1b9609102cb067fcb71200885cb2d4888e8f8879262476?d=identicon)[aprezcuba24](/maintainers/aprezcuba24)

---

Top Contributors

[![aprezcuba24](https://avatars.githubusercontent.com/u/1106566?v=4)](https://github.com/aprezcuba24 "aprezcuba24 (5 commits)")

### Embed Badge

![Health badge](/badges/culabs-jquery-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/culabs-jquery-bundle/health.svg)](https://phpackages.com/packages/culabs-jquery-bundle)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
