Дополнительные символы добавлены в многострочное текстовое поле

Проблема, с которой я сталкиваюсь, заключается в том, что когда я создаю многострочное текстовое поле, оно добавляет символы (возврат каретки).

Я использую .NET 4.5. Я создал пустой проект только с многострочным текстовым полем:

<asp:TextBox ID="txtTest" runat="server" TextMode="MultiLine" Rows="5" Columns="50"></asp:TextBox>

В firefox и chrome это выглядит так:

<textarea name="txtTest" rows="5" cols="50" id="txtTest">&#13;&#10;</textarea> 

В ИЕ нормально.

Заранее спасибо.


person Sean    schedule 10.10.2012    source источник
comment
Что такое результирующий HTML-код, который отправляется в браузер?   -  person Neil    schedule 10.10.2012
comment
Это вторая строка кода, которую я разместил: ‹textarea name=txtTest rows=5 cols=50 id=txtTest› ‹/textarea›   -  person Sean    schedule 10.10.2012


Ответы (3)


это исправлено в версии .NET 4.5 RTM. Вы используете 4.RC? Подключение проблема исправлена ​​в RTM

person Anand    schedule 11.10.2012
comment
blogs.msdn.com/b/heaths/archive/2012/08/17/ - person Anand; 12.10.2012
comment
Проверено, что новейшая RTM VS2012 устраняет проблемы. Спасибо! - person Sean; 15.10.2012
comment
обратите внимание, что есть примечание по проблеме с подключением, указывающее, что это, если вы используете значение controlRenderingCompatibilityVersion меньше 4,5. Это может показаться очевидным, но именно это позволило мне решить ту же проблему. - person jmoreno; 26.12.2014

Как предложил jmoreno, изменив

controlRenderingCompatibilityVersion=4.0

to

controlRenderingCompatibilityVersion=4.5

в web.config мне помогло.

person JTapp    schedule 30.09.2015
comment
Я долго боролся с этой проблемой, так как не мог найти решение или указать причину проблемы, просто добавив это в качестве ‹pages controlRenderingCompatibilityVersion=4.5 › решенной проблемы. - person Learning; 17.08.2020

Первая начальная новая строка (LF или CRLF) текстовой области игнорируется.

IE 8 и другие старые браузеры (например, Firefox 3) удаляют начальную новую строку после разбора символьных объектов.

Однако более новые браузеры удаляют начальную новую строку перед анализом символьных объектов, которые затем интерпретируются как часть значения по умолчанию для текстовой области.

Я не знаю, почему .NET будет генерировать эти символы.

person Neil    schedule 10.10.2012
comment
Спасибо за объяснение. Я полагаю, это ошибка - этих символов там быть не должно, и я не уверен, что могу что-то с этим поделать. - person Sean; 11.10.2012