Yii2: Kartik \ editable \ Editable закрывает всплывающее окно при размытии или при нажатии снаружи

Используя виджет EditableColumn вместе со всплывающим текстовым полем, щелкните поле, и всплывающее окно откроется. когда я нажимаю за пределами любой области страницы, всплывающее окно не закрывается

  return kartik\editable\Editable::widget ( [
            'name' => 'name' ,
            'size' => 'sm' ,
            'placement' => 'right' ,
            'containerOptions' => [] ,
            'contentOptions' => [] ,
            'inputType' => kartik\editable\Editable::INPUT_TEXT ,
            'value' => 1 ,
            'editableValueOptions' => [] ,
            'pluginEvents' => [
                "editableSuccess" => "function(event, val, form, data) {
    $.pjax.reload({container: '#name'});
    }" ,
            ] ,
            'formOptions' => [
                'method' => 'post' ,
                'id' => 'form_name' ,
                'action' => [ url ]
            ] ,
            'options' => [
                'id' => 'form_name' ,
                'pluginOptions' => [
                    'autoclose' => true
                ] ,
                'maxlength' => '10' ,
            ] ,
            'submitButton' => [
                'class' => 'btn btn-sm btn-primary' ,
                'icon' => '' ,
            ] ,
        ] );

Он не предоставляет функции по умолчанию, но вы можете сделать это с помощью JS, попробуйте ответ ниже

Sudharshan Nair 18.07.2018 11:47

@SudharshanNair, это неверно, он предоставляет функции по умолчанию для этого, и вы можете использовать closeOnBlur как true, который по умолчанию имеет значение false

Muhammad Omer Aslam 19.07.2018 02:15

@MuhammadOmerAslam. Ты прав. :-)

Sudharshan Nair 19.07.2018 06:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
722
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам нужно использовать опцию 'closeOnBlur'=>true, для редактируемого, так как по умолчанию он имеет значение false и остается липким при щелчке за пределами любого места.

Кроме того, вы указываете pluginOptions внутри options, который добавит их в качестве атрибута к входным данным. и вы указываете URL-адрес, например [url], обновите его до фактического URL-адреса, когда вы используете код, измените свой редактируемый код на следующий.

echo kartik\editable\Editable::widget ( [
    'name' => 'name' ,
    'size' => 'sm' ,
    'placement' => 'right' ,
    'containerOptions' => [] ,
    'contentOptions' => [] ,
    'inputType' => kartik\editable\Editable::INPUT_TEXT ,
    'value' => 1 ,
    'editableValueOptions' => [] ,
    'pluginEvents' => [
        "editableSuccess" => "function(event, val, form, data) {
    $.pjax.reload({container: '#name'});
    }" ,
    ] ,
    'formOptions' => [
        'method' => 'post' ,
        'id' => 'form_name' ,
        'action' => ''
    ] ,
    'closeOnBlur'=>true,
    'options' => [
        'id' => 'form_name' ,
        'maxlength' => '10' ,
    ] ,
    'submitButton' => [
        'class' => 'btn btn-sm btn-primary' ,
        'icon' => '' ,
    ] ,
] );

Другие вопросы по теме