kartik-v/yii2-widget-typeahead Enhanced Yii2 wrapper for the Twitter Typeahead plugin (sub repo split from yii2-widgets).

extensionwidgetdropdowntypeaheadjquerypluginform

Krajee Logo
yii2-widget-typeahead Donate       kartikv

[![Stable Version](https://poser.pugx.org/kartik-v/yii2-widget-typeahead/v/stable)](https://packagist.org/packages/kartik-v/yii2-widget-typeahead) [![Unstable Version](https://poser.pugx.org/kartik-v/yii2-widget-typeahead/v/unstable)](https://packagist.org/packages/kartik-v/yii2-widget-typeahead) [![License](https://poser.pugx.org/kartik-v/yii2-widget-typeahead/license)](https://packagist.org/packages/kartik-v/yii2-widget-typeahead) [![Total Downloads](https://poser.pugx.org/kartik-v/yii2-widget-typeahead/downloads)](https://packagist.org/packages/kartik-v/yii2-widget-typeahead) [![Monthly Downloads](https://poser.pugx.org/kartik-v/yii2-widget-typeahead/d/monthly)](https://packagist.org/packages/kartik-v/yii2-widget-typeahead) [![Daily Downloads](https://poser.pugx.org/kartik-v/yii2-widget-typeahead/d/daily)](https://packagist.org/packages/kartik-v/yii2-widget-typeahead)

The Typeahead extension is a Yii 2 wrapper widget for for the Twitter Typeahead.js plugin with certain custom enhancements. The latest release uses the typeahead.js fork from corejavascript. The yii2-widget-typeahead extension is a jQuery based replacement for text inputs providing search and typeahead functionality. It is inspired by twitter.com's autocomplete search functionality and based on Twitter's typeahead.js, which is described as a fast and fully-featured autocomplete library. The widget is specially styled for Bootstrap 3.x, 4.x, or 5.x. The widget allows graceful degradation to a normal HTML text input, if the browser does not support JQuery. You can also setup model validation rules for the widget like any other field. The extension offers two variations of the widget implementation:

  • TypeaheadBasic: This widget is a basic implementation of the typeahead.js plugin without any suggestion engine. It uses a javascript substring matcher and Regular Expression matching to query and display suggestions. VIEW DEMO

  • Typeahead: This widget is an advanced implementation of the typeahead.js plugin with the BloodHound suggestion engine and the Handlebars template compiler. VIEW DEMO

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.

Installation

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-typeahead "*"

or add

"kartik-v/yii2-widget-typeahead": "*"

to the require section of your composer.json file.

Latest Release

Refer the CHANGE LOG for details on changes to various releases.

Demo

You can refer detailed documentation and demos for TypeaheadBasic or Typeahead for understanding the usage of the extension.

Usage

use kartik\typeahead\TypeaheadBasic;
use kartik\typeahead\Typeahead;

// TypeaheadBasic usage with ActiveForm and model
echo $form->field($model, 'state_3')->widget(TypeaheadBasic::classname(), [
    'data' => $data,
    'pluginOptions' => ['highlight' => true],
    'options' => ['placeholder' => 'Filter as you type ...'],
]);

// Typeahead usage with ActiveForm and model
echo $form->field($model, 'state_4')->widget(Typeahead::classname(), [
    'dataset' => [
        [
            'local' => $data,
            'limit' => 10
        ]
    ],
    'pluginOptions' => ['highlight' => true],
    'options' => ['placeholder' => 'Filter as you type ...'],
]);

License

yii2-widget-typeahead is released under the BSD-3-Clause License. See the bundled LICENSE.md for details.

Changelog

Change Log: yii2-widget-typeahead

Version 1.0.5

Date: 21-Dec-2021

  • (enh #47): Update handlebars JS to latest release.
  • (enh #46): Correct CSS styling for input readonly.

Version 1.0.4

Date: 29-May-2019

  • (enh #37): Allow empty local array.
  • (enh #32): Remove enforcement on empty arrays for widget.
  • Implement stale bot

Version 1.0.3

Date: 09-Oct-2018

  • Bump composer dependencies.

Version 1.0.2

Date: 05-Aug-2018

  • (enh #26): Update composer dependency for yii2-krajee-base.
  • Update Handlebars js assets to latest release v4.1.1.
  • (enh #21): Update typeahead js assets to latest release from fork corejavascript/typeahead.
  • Better initialization of JS for PJAX scenario.
  • Reorganize source code in src directory.
  • (enh #20): Allow configuration of input type with new property TypeAheadBasic::inputType.
  • Add composer branch alias for latest dev-master release.
  • Add github contribution and PR log templates.
  • (enh #9): Fix documentation typo.

Version 1.0.1

Date: 28-Jun-2015

  • (enh #8): Fix plugin for typeahead hints.
  • (enh #7): Feature enhancements for plugin v0.11.1.
    • Simplify the list suggestions data to a linear array
    • Enhance dataset configuration for TypeaheadBasic and Typeahead to distinctly capture Bloodhound properties.
    • Added defaultSuggestions property.
    • Bootstrap styling enhancements
    • New enhanced custom javascript methods in typeahead-kv.js - (kvInitTA and kvSubstringMatcher).
    • Include ability to show loading indicator for ajax / remote requests.
  • (enh #6): Update to latest release v0.11.1 of typeahead.js plugin.
  • (enh #5): Implement default suggestions feature.

Version 1.0.0

Date: 08-Nov-2014

Statistics

Downloads
GitHub Stars
GitHub Forks

Releases

Comments



v1.0.4 is the latest of 5 releases



BSD-3-Clause license
Stats
44 github stars & 17 github forks
2620 downloads in the last day
55234 downloads in the last 30 days
3489006 total downloads