gitrequests/yii2-widget-easyautocomplete

为 EasyAutocomplete 插件(https://github.com/pawelczak/EasyAutocomplete)提供的 Yii2 小部件。

1.1 2018-09-26 19:57 UTC

This package is auto-updated.

Last update: 2024-09-14 18:26:21 UTC


README

为 EasyAutocomplete 插件(https://github.com/pawelczak/EasyAutocomplete)提供的 Yii2 小部件。

安装

安装此扩展的首选方式是通过 composer。请检查此扩展的需求和依赖关系,请参阅 composer.json

要安装,可以运行

$ php composer.phar require gitrequests/yii2-widget-easyautocomplete "dev-master"

或者将以下内容添加到您的 composer.json 文件的 require 部分:

"gitrequests/yii2-widget-easyautocomplete": "dev-master"

用法

echo EasyAutocomplete::widget([
    'pluginOptions' => [
        'url' => Url::to('data/countries.json'),
        'getValue' => 'name'
    ]
]);

您还可以使用此小部件在 [[ActiveForm]] 中,使用 [[ActiveField::widget()|widget()]] 方法,例如:

echo $form->field($model, 'address')->widget(EasyAutocomplete::className(), [
    'pluginOptions' => [
        'url' => Url::to('data/countries.json'),
        'getValue' => 'name'
    ]
]);

对于与列表事件或函数一起使用(例如,自定义匹配函数)

echo $form->field($model, 'address')->widget(EasyAutocomplete::className(), [
    'pluginOptions' => [
        'url' => Url::to('data/countries.json'),
        'getValue' => 'name'
        'list' => [
            'maxNumberOfElements' => 10,
            'match' => [
                'enabled' => true,
                'method' => new JsExpression(<<<JavaScript
                    function(element, phrase) {

                        var searches = phrase.split(' ')
                        var count = 0;

                        for (var search of searches) {
                            if (element.search(search) > -1) {
                                count++;
                            }
                        }

                        return searches.length === count
                    }
                JavaScript
                )
            ]
        ]
    ]
]);