我们在Intranet上使用FreeTextBox 3.1.6。该控件出现在Visual Studio 2008中构建的ASP.Net项目中。
当客户在文本框中输入选项卡时,这些选项卡不会在回发时保留。相反,标签丢失了。保留其他文本格式,如粗体,斜体或字体大小。
即使网页上发生的回发事件没有向数据库保存任何内容,我们也会丢失标签。根据{{3}},FreeTextBox使用的JavaScript和XML存储在dll中。所以我无法编辑这些文件的内容。
有没有人遇到FreeTextBox这个问题?如果是这样,你是如何解决的?
以下是发生的行为。在FreeTextBox控件中输入带有制表符的文本。
http://wiki.freetextbox.com/default.aspx/FreeTextBoxWiki.Installation
然后选择“保存”按钮。这是一个回发页面的命令按钮。在我的测试场景中,没有任何内容从数据库中保存和加载。 FreeTextBox控件严格显示已发布的文本。我的猜测是ViewState中的机制处理,但我不确定。
alt text http://img132.imageshack.us/img132/4826/ftb1postcz4.gif
如您所见,所有标签都消失了。甚至在单词之间插入的标签也消失了。 谢谢你的帮助。
肯
答案 0 :(得分:0)
将TabMode设置为“InsertSpaces”无法解决此问题。我实例化控件的源代码如下。我发布的图片以前没有显示过。访问这些链接以查看它们。 http://img132.imageshack.us/img132/4826/ftb1postcz4.gif http://img132.imageshack.us/img132/175/ftb2postbd6.gif
答案 1 :(得分:0)
<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"
>
答案 2 :(得分:0)
我找到了答案。原始程序员的代码在提交时拦截了文本框的内容。该代码重新格式化了特殊货币字符的文本,如日元,欧元和英镑。
这是代码的样子。
Dim hstrg As String = txtDocument.Text Dim f As New FreeTextBoxControls.Support.Formatter hstrg = f.HtmlToXhtml(hstrg)
解决HtmlToXhtml()方法问题的原因是什么。我们不需要内容与Xhtml兼容,所以这对我们来说是一个可行的选择。
答案 3 :(得分:0)
我在以前的一些开发中一直使用自由文本框,但它有一些怪癖,在IE中无法正常工作。
尝试转移到FCKEditor或TinyMCE。他们似乎比FTB更好的体验。我选择了FCK,我认为WordPress使用TinyMCE。如果可以选择编辑器切换,请尝试使用它们。