Вкладки FreeTextBox не сохраняются при обратной передаче
Мы используем FreeTextBox 3.1.6 в интрасети. Элемент управления появляется в проекте ASP.Net, построенном в Visual Studio 2008.
Когда клиенты вводят вкладки в текстовое поле, эти вкладки не сохраняются при обратной передаче. Скорее вкладки потеряны. Остальное форматирование текста, например полужирный, курсив или размер шрифта, сохраняется.
Даже когда событие обратной передачи, которое происходит на веб-странице, ничего не сохраняет в базе данных, мы теряем вкладки. Согласно http://wiki.freetextbox.com/default.aspx/FreeTextBoxWiki.Installation JavaScript и XML, используемые FreeTextBox, хранятся в dll. Поэтому я не могу редактировать содержимое этих файлов.
Кто-нибудь сталкивался с этой проблемой с FreeTextBox? Если так, как вы решили это?
Вот поведение, которое происходит. Введите текст с помощью вкладок в элементе управления FreeTextBox.
http://img132.imageshack.us/img132/4826/ftb1postcz4.gif
Затем нажмите кнопку "Сохранить". Это командная кнопка, которая отправляет обратно страницу. В моем тестовом сценарии ничего не сохраняется и не загружается из базы данных. Элемент управления FreeTextBox строго отображает текст, который был опубликован. Я предполагаю, что механизм обработки, который находится во ViewState, но я не уверен в этом.
http://img132.imageshack.us/img132/175/ftb2postbd6.gif
Как видите, все вкладки исчезли. Даже вкладки между словами исчезли. Спасибо за вашу помощь.
кругозор
4 ответа
<FTB:FREETEXTBOX id="txtDocument" EnableHtmlMode="False" Width="100%" runat="server" AllowHtmlMode="True"
StripAllScripting="True" Height="400px" FormatHtmlTagsToXhtml="False"
AutoGenerateToolbarsFromString="true"
ToolbarLayout="ParagraphMenu, FontFacesMenu, FontSizesMenu, FontForeColorsMenu, FontForeColorPicker| Bold, Italic, Underline, Strikethrough; Superscript, Subscript, RemoveFormat| JustifyLeft, JustifyRight, JustifyCenter, JustifyFull; BulletedList, NumberedList, Indent, Outdent; CreateLink, Unlink, InsertImage, InsertRule| Cut, Copy, Paste; Undo, Redo, Print"
TabMode="InsertSpaces"
>
Я использовал свободное текстовое поле в некоторых моих предыдущих разработках, но оно имело некоторые причуды и не сработало в IE.
попробуйте перейти на FCKEditor или TinyMCE. они кажутся намного лучше, чем FTB. я выбрал FCK, и я думаю, что WordPress использует TinyMCE. попробуйте их, если опция редактора является опцией.
Я нашел ответ. У исходного программиста был код, который перехватывал содержимое текстового поля при его отправке. Этот код переформатировал текст для специальных символов валюты, таких как иена, евро и фунт.
Вот как выглядел код.
Dim hstrg As String = txtDocument.Text Dim f As New FreeTextBoxControls.Support.Formatter hstrg = f.HtmlToXhtml (hstrg)
Что исправило проблему, так это закомментировал этот метод HtmlToXhtml(). Нам не нужно, чтобы содержимое было совместимо с Xhtml, поэтому этот вариант был для нас жизнеспособным.
Установка TabMode в "InsertSpaces" не разрешила это. Мой исходный код для создания экземпляра элемента управления ниже. Фотографии, которые я разместил, ранее не показывались. Посетите эти ссылки, чтобы увидеть их. http://img132.imageshack.us/img132/4826/ftb1postcz4.gif http://img132.imageshack.us/img132/175/ftb2postbd6.gif