This is the Select2 widget and a Yii 2 enhanced wrapper for the Select2 jQuery plugin. This input widget is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results. The widget is specially styled for Bootstrap 3 and offers a few enhancements not available in the source plugin. The widget allows graceful degradation to a normal HTML select or text input, if the browser does not support JQuery.
NOTE: This extension is a sub repo split of yii2-widgets. The split has been done since 08-Nov-2014 to allow developers to install this specific widget in isolation if needed. One can also use the extension the previous way with the whole suite of yii2-widgets.
The preferred way to install this extension is through composer. Check the composer.json for this extension's requirements and dependencies. Read this web tip /wiki on setting the minimum-stability
settings for your application's composer.json.
To install, either run
$ php composer.phar require kartik-v/yii2-widget-select2 "@dev"
or add
"kartik-v/yii2-widget-select2": "@dev"
to the require
section of your composer.json
file.
NOTE: Refer the CHANGE LOG for details on changes to various releases.
The widget has a major version revamp with v2.0. This release includes updates to use Select2 plugin release v4.0. Select2 release v4.0 is a major rewrite over Select2 v3.x and hence quite a few enhancements or changes should be expected. To use the earlier plugin release v3.5.2, you must point it to the v1.0.1 release of the widget.
Enhancements with release v2.0:
theme
property that allows you to set themes in Select2 to style your widget.Select2::THEME_KRAJEE
is specially styled for Select2. This will help achieve various new yii2-widget-select2 features. This theme matches the bootstrap 3 styling with enhancements.Select2::THEME_DEFAULT
, Select2::THEME_CLASSIC
, and Select2::THEME_BOOTSTRAP
. One can add their own custom theme and configure the widget.query
plugin property needed. It is also not mandatory to configure data
even if you have not set tags
or query
or ajax
. Widget will intelligently evaluate the properties and default list values.initSelection
method of Select2 3.5.x plugin is obsolete/removed. New initValueText
property is been provided with the Select2 widget to cater to this (e.g. for ajax based loading).You can refer detailed documentation and demos and API Code Documentation on usage of the extension.
use kartik\select2\Select2;
// Normal select with ActiveForm & model
echo $form->field($model, 'state_1')->widget(Select2::classname(), [
'data' => $data,
'language' => 'de',
'options' => ['placeholder' => 'Select a state ...'],
'pluginOptions' => [
'allowClear' => true
],
]);
// Multiple select without model
echo Select2::widget([
'name' => 'state_2',
'value' => '',
'data' => $data,
'options' => ['multiple' => true, 'placeholder' => 'Select states ...']
]);
This project exists thanks to all the people who contribute. [Contribute].
Become a financial contributor and help us sustain our community. [Contribute]
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
yii2-widget-select2 is released under the BSD-3-Clause License. See the bundled LICENSE.md
for details.
yii2-widget-select2
Date: 22-Jun-2023
Date: 29-Aug-2022
hashVarLoadPosition
is View::POS_READY
.Date: 04-Mar-2022
Date: 02-Sep-2021
Date: 09-Jun-2021
Date: 28-Sep-2020
Date: 25-Sep-2020
hashVarLoadPosition
to initialize Select2 hash variable.Date: 21-Jul-2020
Date: 15-Nov-2019
Date: 01-Nov-2019
Date: 31-Oct-2019
Date: 02-Sep-2019
Date: 07-Sep-2018
Date: 17-Aug-2018
src
directory.Date: 25-Nov-2017
Date: 07-Aug-2017
Date: 12-Apr-2017
has-success
and has-error
states.Select All
functionality for ajax based multiple selects.multiple
mode.Date: 17-Feb-2016
Date: 10-Jan-2016
Date: 22-Dec-2015
Date: 21-Dec-2015
x
clear indicator.success
and error
states for active field trapped errorschangeOnReset
)toggleAllSettings
). Allow complete configuration and styling of the same .maintainOrder
which defaults to false
. Set this to true
to maintain order)data-s2-options
is now stored in parent select input. This will store the global variable that will maintain the additional Json encoded options to be used by initS2Loading
method.Date: 22-Sep-2015
Date: 13-Sep-2015
multiple
property.Date: 01-Jul-2015
isset
instead of empty
.lib
folder to assets
for consistency.Date: 07-Jun-2015
krajeeselect2:cleared
.data
and multiple
ajax select.Date: 09-May-2015
Major revamp to the widget. Version bumped to release v2.0.0.
theme
property that allows you to set themes in Select2 to style your widget.Select2::THEME_KRAJEE
is specially styled for Select2. This will help achieve various new yii2-widget-select2 features. This theme matches the bootstrap 3 styling with enhancements.Select2::THEME_DEFAULT
, Select2::THEME_CLASSIC
, and Select2::THEME_BOOTSTRAP
. One can add their own custom theme and configure the widget.query
plugin property needed. It is also not mandatory to configure data
even if you have not set tags
or query
or ajax
. Widget will intelligently evaluate the properties and default list values.initSelection
method of Select2 3.5.x plugin is obsolete/removed. New initValueText
property is been provided with the Select2 widget to cater to this (e.g. for ajax based loading).Date: 03-May-2015
Date: 08-Nov-2014
Comments