Проблемы с Tinymce(редактор html формы). An invalid form control with

156
23 марта 2018, 13:19

Здравствуйте, в прошлой моей теме мне посоветовали поставить Tinymce (редактор html, ниже ссылка):

Форма редактирования php

я поставил в laravel, правда готовую библиотеку не ставил, просто подключил онлайн, но не суть.

Форма:

<form class="form-horizontal" method="post">
    <textarea class="form-control my-editor" placeholder="Оставьте Ваш комментарий" name="addComment" maxlength="8000" required></textarea>

JS:

var editor_config = {
                path_absolute: "/",
                selector: "textarea.my-editor",
                    plugins: [
                        "advlist autolink lists link  charmap preview hr anchor pagebreak",
                        "searchreplace fullscreen",
                        "insertdatetime nonbreaking save contextmenu directionality",
                        "emoticons paste textcolor colorpicker textpattern"
                    ],
                    toolbar: "insertfile | styleselect | bold  | emoticons ",
                    relative_urls: false,
                    file_browser_callback: function (field_name, url, type, win) {
                        var x = window.innerWidth || document.documentElement.clientWidth || document.getElementsByTagName('body')[0].clientWidth;
                        var y = window.innerHeight || document.documentElement.clientHeight || document.getElementsByTagName('body')[0].clientHeight;
                        var cmsURL = editor_config.path_absolute + 'laravel-filemanager?field_name=' + field_name;
                        if (type == 'image') {
                            cmsURL = cmsURL + "&type=Images";
                        } else {
                            cmsURL = cmsURL + "&type=Files";
                        }
                        tinyMCE.activeEditor.windowManager.open({
                            file: cmsURL,
                            title: 'Filemanager',
                            width: x * 0.8,
                            height: y * 0.8,
                            resizable: "yes",
                            close_previous: "no"
                        });
                    },
                };

Так вот, проблема в том, что при отправке, не отправляет запрос и выскакивает

" An invalid form control with name='addComment' is not focusable."

Почитал в инете, сказали добавить в "novalidate", ну и тут ошибка, что required не работает.

В чем может быть проблема? Мои догадки, что что-то не так в js.

Answer 1

Браузер пытается сфокусироваться на элементе который валидирует в данный момент (который required) но все еще пуст, для того чтобы он мог вывести сообщение «Пожалуйста, заполните это поле». Однако, если элемент управления скрыт в точке, в которой браузер хочет вывести сообщение (то есть во время отправки формы) браузер не может сфокусироваться на элементе который валидирует, потому что он скрыт, поэтому форма не будет отправлена.

Итак, чтобы обойти проблему, когда элемент управления скрыт от javascript, мы также должны удалить атрибут required из этого элемента управления.

READ ALSO
PHP не видит данные из HTML

PHP не видит данные из HTML

Привет! Написал запрос, но он не хочет брать данные из формы

142
Как сделать &ldquo;обратное&rdquo; древо на php/css?

Как сделать “обратное” древо на php/css?

Нашел исходники, как сделать вот такое дерево

128
void fun() virtual vs void(*fun)()

void fun() virtual vs void(*fun)()

Добрый день, сильно интересует, что из этого лучше использовать и почему

173
Использование dll в модуле node.js написанном C++

Использование dll в модуле node.js написанном C++

Есть модуль nodejs написанный на С++ (с использованием N-api)

186