JawsIk
@JawsIk
Python Django, Lua, ЧПУ-станки(ArtCam, Aspire)

Как сделать input text или textarea без переноса, но многострочные?

Суть в чём. Существует форма. В которой есть поле для ввода примечания:
5c9c82aadec2e076457151.png

Если я использую input type="text", то мы получаем однострочное примечание, которое работает почти как надо. Но, если вдруг примечание длинное, то всё уходит за пределы (смещается в строке ввода) и пользователь жалуется, что мол не видит начало.

Если я использую textarea, то мы получаем многострочное примечание, а в БД это не предусмотрено. И после внесения в БД, возврат приходит, где уже строчки слепленные и пользователь снова жалуется, мол всё мне поломало, а я писал всё было понятно.

Соответственно вопрос. Как сделать, чтобы комментарий был однострочным, но когда пользователь своим текстом вдруг пересекает край поля ввода, текст визуально оказывался на следующей стоке, но при этом никаких переносов в реале не происходило.

На мой взгляд под это дело прекрасно бы подошёл input type="text", если бы он мог переводить строку ниже при достижении края поля ввода.

Но я бы и согласился на textarea лишь в том случае, чтобы не было возможности нажимать ENTER и писать с новой строки.

Что можете посоветовать?
  • Вопрос задан
  • 2430 просмотров
Решения вопроса 1
JawsIk
@JawsIk Автор вопроса
Python Django, Lua, ЧПУ-станки(ArtCam, Aspire)
Короче решил через js, так оказалось проще.
<textarea type="text" class="md-textarea form-control border-top input-note" rows="2"></textarea>

// запрет нажатия ENTER в поле ввода
            $('.input-note').on('keydown', function (e) {
                if (e.keyCode === 13) {
                    e.preventDefault();
                    whenEnterPressed();
                }
            });
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Vlad_IT
@Vlad_IT Куратор тега CSS
Front-end разработчик
Можно при событии oninput, заменять переводы строки на пустую строку. Таким образом, не потеряются автоматические переносы, а только ручные.
Пример
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы