Запретите ввод, чтобы перейти к следующему вопросу в опросе Django - PullRequest
1 голос
/ 24 октября 2019

Я пишу небольшой опрос в Джанго. Последний вопрос может быть полем формы обратной связи, в котором участники могут высказывать свои мысли. Однако, если я нажимаю клавишу ввода во время заполнения отзыва, они переходят к следующему вопросу. Я хочу запретить процедуру ввода (на всякий случай, если они хотят много писать).

просмотр страниц:

class Feedback(Page):
    form_model = 'player'
    form_fields = ['feedback']

просмотр моделей:

feedback = models.StringField(
        label='Is there any Feedback you would like to share?')

1 Ответ

1 голос
/ 24 октября 2019

Это проблема переднего плана. Вы можете обратиться к нему в Django.

Простейшим может быть использование виджета TextField или TextInput, который должен , чтобы принять Enter как просто другой символ,

В качестве альтернативы вы можете добавить BooleanField со значением по умолчанию False (отображается как непроверенный флажок) и вызывает ошибку проверки, если при отправке она не равна True. Поэтому, если пользователь отправляет перед проверкой (f.ex.) «Я согласен на публикацию вышеупомянутого комментария» (или любые другие слова, которые могут быть более подходящими), он получает ошибку в этом флажке - и может вернуться кнабрав их неполный текст комментария. Если они не намеревались подать заявку, используя Enter, они будут благодарны. Если они это сделают, то, надеюсь, они просто вздохнут и поставят галочку рядом с «Отправить».

Или сделают его скрытым, по умолчанию будет недействительным, и используют Jquery, чтобы установить его значение на действительное, когда фактическая отправкакнопка нажата. Но вернемся к кодированию интерфейса.

...