HTML текстовое форматирование
Если я скопирую содержимое текстовой области в скрытое поле ввода, будет ли сохранено форматирование? Или есть шанс, что он может потерять разрывы строк и т. Д.
3 ответа
Он потеряет разрывы строк со 100% -ной уверенностью, потому что поля ввода - это поля SINGLE LINE.
http://www.w3.org/TR/html401/interact/forms.html
НО вы указали на скрытое поле ввода, поэтому я предполагаю, что вы имели в виду ввод скрытого типа. Тогда ответ заключается в том, что он может сохранять LINE BREAKS, но НЕ стилизовать.
Так как стилизация ориентирована на элементы, поэтому, когда вы копируете что-либо из textarea, вы копируете только "данные", а не стилизацию, характерную для элемента "textarea".
Вот демонстрация. http://jsfiddle.net/WtNRX/
Этот JSFiddle говорит все; разрывы строк потеряны. Введите несколько строк в текстовое поле и поместите его в <input>
удаляет разрывы строк. Загляните в консоль браузера после нажатия на ссылку "Записать в консоль", чтобы увидеть одну строку.
По какой-то причине разрывы строк теряются при копировании в поле ввода текста, <input type=text>
Возможно, потому, что этот элемент был определен как однострочный. Но при копировании в <input type=hidden>
разрывы строк сохраняются и передаются в виде данных при отправке на сервер.
Это относится к разрывам строк, введенным пользователем. Визуальные разрывы строк, которые могут вводить браузеры, представляют собой другую проблему.