Разрывы строк в элементе textarea - PullRequest
25 голосов
/ 02 ноября 2011

Это чистый HTML. (без php или чего-то в этом роде, если вы хотите знать фон, это приложение C # с HTML в веб-представлении).

Все мои HTML-файлы хорошо отформатированы и имеют правильные отступы для удобства обслуживания и тому подобное.

Вот выдержка:

<tr>
    <td class="label">Clinic Times:</td>
    <td><textarea name="familyPlanningClinicSessionsClinicTimes">Monday:
    Tuesday:
    Wednesday:
    Thursday:
    Friday:
    Saturday:
    Sunday:</textarea></td>
</tr>

Разрывы строк в элементе <textarea></textarea> предназначены для получения разрывов строк на странице. Однако он также включает отступ в элементе textarea.

, например

example

Единственный способ решить эту проблему - удалить отступ. Это не конец света, но есть ли другой способ сохранить хорошее форматирование? Спасибо.

Ответы [ 7 ]

64 голосов
/ 02 ноября 2011

Вы можете использовать &#10; (это означает новую строку в html), но, возможно, это не очень хорошее форматирование, как вы сказали ...

Единственный способ решить эту проблему - удалить отступ. Это не конец света, но есть ли другой способ сохранить хорошее форматирование?

<tr>
  <td class="label">Clinic Times:</td>
  <td><textarea name="familyPlanningClinicSessionsClinicTimes">Monday:&#10;Tuesday:&#10;Wednesday:&#10;Thursday:&#10;Friday:&#10;Saturday:&#10;Sunday:</textarea></td>
</tr>
7 голосов
/ 02 ноября 2011

Существует не чисто HTML решение вашей проблемы. Текстовые поля всегда отображают любые пробелы в их содержимом.

В идеальном мире вы сможете воспользоваться свойством CSS white-space; к сожалению, он также не применяется к текстовым областям.

1 голос
/ 02 ноября 2011

Вы можете использовать <div> с атрибутом contenteditable:

<div contenteditable="true" style="width: 450px; height: 300px; white-space: pre-line;" name="familyPlanningClinicSessionsClinicTimes">Monday:
                            Tuesday:
                            Wednesday:
                            Thursday:
                            Friday:
                            Saturday:
                            Sunday:</div>

Но в вашем случае, я думаю, что решение проблемы будет просто использовать несколько обычных текстовых полей, по одному на каждый день:

Monday: <input type="text" name="familyPlanningClinicSessionsClinicTimesMonday" /><br />
Tuesday: <input type="text" name="familyPlanningClinicSessionsClinicTimesTuesday" /><br />
...
0 голосов
/ 04 октября 2015

Если вы просто хотите получить список предметов, вы можете использовать <ul> <li>"Monday"</li> <li>"Tuesday"</li> ... </ul>
Использование <ul><li></li></ul> запустит предварительно отформатированный список с <ul> запуском списка и <li> запуском каждого элемента в списке. Этот метод не требует каких-либо Java или CSS и автоматически делает отступ.

0 голосов
/ 20 августа 2012

В C #, если вы хотите отправить новую строку в текстовую область, вы можете использовать Environment.NewLine

0 голосов
/ 02 ноября 2011

Нету; текстовая область выплюнет все, что у нее есть на самом деле.

Вы можете ввести значение из JavaScript, но это кажется большой работой для изолированной вещи.

0 голосов
/ 02 ноября 2011

Tryесли это хорошо для вас:

Monday:<br/>Tuesday:<br/>...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...