Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yii2mod/yii2-selectize
selectize.js wrapper for yii2.
https://github.com/yii2mod/yii2-selectize
yii2 yii2-extension yii2-select-widget yii2-selectize yii2-tagging-input
Last synced: about 1 month ago
JSON representation
selectize.js wrapper for yii2.
- Host: GitHub
- URL: https://github.com/yii2mod/yii2-selectize
- Owner: yii2mod
- License: mit
- Created: 2015-03-12T23:04:40.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2019-11-02T17:47:21.000Z (about 5 years ago)
- Last Synced: 2024-09-29T23:02:10.537Z (about 2 months ago)
- Topics: yii2, yii2-extension, yii2-select-widget, yii2-selectize, yii2-tagging-input
- Language: PHP
- Size: 43.9 KB
- Stars: 19
- Watchers: 6
- Forks: 10
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
Yii2 Selectize Widget
Widget based on selectize.js extension https://selectize.github.io/selectize.js/
[![Latest Stable Version](https://poser.pugx.org/yii2mod/yii2-selectize/v/stable)](https://packagist.org/packages/yii2mod/yii2-selectize) [![Total Downloads](https://poser.pugx.org/yii2mod/yii2-selectize/downloads)](https://packagist.org/packages/yii2mod/yii2-selectize) [![License](https://poser.pugx.org/yii2mod/yii2-selectize/license)](https://packagist.org/packages/yii2mod/yii2-selectize)
[![Build Status](https://travis-ci.org/yii2mod/yii2-selectize.svg?branch=master)](https://travis-ci.org/yii2mod/yii2-selectize)Installation
------------The preferred way to install this extension is through [composer](http://getcomposer.org/download/).
Either run
```
php composer.phar require --prefer-dist yii2mod/yii2-selectize "*"
```or add
```json
"yii2mod/yii2-selectize": "*"
```to the require section of your composer.json.
Usage
------------
Once the extension is installed, simply add widget to your page as follows:1) Tagging input:
```php
echo $form->field($model, "attribute")->widget(Selectize::className(), [
'pluginOptions' => [
'persist' => false,
'createOnBlur' => true,
'create' => true
]
]);
```
2) Select input:
```php
echo $form->field($model, "attribute")->widget(Selectize::className(), [
'items' => [
'Yes',
'No'
],
'pluginOptions' => [
'persist' => false,
'createOnBlur' => true,
'create' => true
]
]);
```3) Tagging input with remote source and default values(If you want render select input, just setup items property):
**Setup view file:**
```php
// setup the following to get the existing data from database
$model->attribute = 'first, last';
// or if the data is an array you can preselect the tags like this
$model->attribute = implode(', ', ["first", "last"]);echo $form->field($model, "attribute")->widget(Selectize::className(), [
'url' => '/site/search',
'pluginOptions' => [
'valueField' => 'name',
'labelField' => 'name',
'searchField' => ['name'],
'persist' => false,
'createOnBlur' => true,
'create' => true
]
]);
```**Your action must return data in the json format, for example:**
```php
public function actionSearch($query = null)
{
Yii::$app->response->format = Response::FORMAT_JSON;
return [
['name' => 'Search Item 1'],
['name' => 'Search Item 2'],
];
}
```
4) Usage widget with plugins:
```php
echo Selectize::widget([
'name' => 'tag-selectize',
'options' => [
'data-data' => $values ? Json::encode($values) : null // Set default values
],
'pluginOptions' => [
// define list of plugins
'plugins' => ['drag_drop', 'remove_button'],
'persist' => false,
'createOnBlur' => true,
'create' => true
]
]);
```
Select Options
----------------
You can find them on the [options page](https://github.com/brianreavis/selectize.js/blob/master/docs/api.md)## Support us
Does your business depend on our contributions? Reach out and support us on [Patreon](https://www.patreon.com/yii2mod).
All pledges will be dedicated to allocating workforce on maintenance and new awesome stuff.