Как сделать поле редактора перьев обязательным? Редактор отображается в div, но неясно, есть ли способ сделать поле/редактор обязательным при отправке формы.
Как сделать редактор quill обязательным?
Ответы (3)
Как вы написали, Quill работает с div, а не с элементом формы, поэтому он не может помочь вам с проверкой формы. Вам нужно будет вручную проверить, не пусто ли содержимое редактора, запретить пользователю отправлять форму и показать сообщение о том, что это поле является обязательным.
Вы можете скопировать содержимое quill в скрытый элемент ввода перед отправкой формы, как показано в этом примере .
Пользовательский элемент управления формы также является хорошим способом. Вы можете попытаться обойти это с помощью обработчика событий Quill и получить значение формы. Тогда также возможен пользовательский валидатор формы.
Проверьте: https://blog.thoughtram.io/angular/2016/07/27/custom-form-controls-in-angular-2.html
Сегодня я пытался обойти именно эту проблему, используя Python для серверной части и скрытое поле формы (name = 'editor'), чтобы получить значение из контейнера quill в серверную часть. В итоге получилось не совсем валидатор, но работающий примерно так же:
if request.form['editor'] == '\"<p><br></p>\"':
flash("You cannot send in empty posts!")
return redirect(CURRENT PAGE)
else:
CODE EXECUTED IF EDITOR IS NOT EMPTY
Не уверен, что вы делаете с вводом в редакторе или используете ли вы Python для серверной части, но я надеюсь, что это поможет. "<p><br></p>"
- это то, что консоль сказала мне, что стандартный ввод при пустой отправке был при получении информации из редактора.
Удачи!