Сохранить форматирование текстового поля после обратной передачи? - PullRequest
0 голосов
/ 07 мая 2009

Я строю HTML-скруббер, по сути, внутренний инструмент для очистки проблемной HTML-страницы. Я создаю инструмент как веб-приложение с использованием ASP.NET 3.5.

Он состоит из кнопки и двух многострочных текстовых полей.

Я программирую, чтобы вы вставили нужный HTML-код в верхнюю часть окна. Нажмите кнопку, и очищенный HTML-код отобразится в нижней части окна. (некоторые методы регулярных выражений выполняют очистку).

Кажется, все работает нормально, за исключением того, что очищенный HTML-файл отправляется в нижнее текстовое поле одной строкой. Все возвраты каретки и язычки удалены. По сути, я связал его с этим простым кодом, который вычеркнет форматирование.

TransformHTML = RawHTML.Text;
BEHtml.Text = TransformHTML;

Как я могу гарантировать, что форматирование первого текстового поля будет перенесено во второе текстовое поле, когда я его назначу? Благодаря.

ОБНОВЛЕНИЕ: Кажется, что я немного путаюсь в том, что я делаю. Я даю текстовое поле набор HTML, например, так:

    <tr>
        <td align="left" valign="middle" colspan="6" style="padding-left: 5px;"><strong><a name="Cell_line" id="Cell_line"></a>CELL LINE REFERENCE TABLE</strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
    </tr>

Когда я нажимаю «отправить» и кнопка нажатия кнопки имеет источник

TransformHTML = RawHTML.Text;
BEHtml.Text = TransformHTML;

в основном копирует строку Textbox.Text в строковую переменную, а затем назначает эту строковую переменную другой Textbox.Text Я получаю следующий вывод:

<tr>             <td align="left" valign="middle" colspan="6" style="padding-left: 5px;"><strong><a name="Cell_line" id="Cell_line"></a>CELL LINE REFERENCE TABLE</strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>         </tr>

Мне бы хотелось, чтобы, когда я нажимал «Отправить», он был многогранным, а не однолинейным.

С точки зрения того, что я вычищаю HTML, это не имеет отношения к приведенному мною примеру.

Ответы [ 2 ]

1 голос
/ 07 мая 2009

Разбирая весь HTML, вы не разбираете все форматирование? Если вы хотите сохранить его, вам, возможно, придется раздеться менее агрессивно.

Кроме того, убедитесь, что для второго текстового поля установлена ​​опция wordwrap (может ли это быть так просто?)

ОТВЕТ ОТ ОРИГИНАЛЬНОГО ВОПРОСА: Приведенный выше ответ заставил меня еще раз проверить мой тег TextBox ASP.NET, и в нем отсутствовал TextMode = "MultiLine"

0 голосов
/ 07 мая 2009

Когда вы убираете HTML, вместо того, чтобы избавляться от BR, замените их на \ r \ n, чтобы он знал, что нужно переносить строки.

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