我有一个标准的asp:textbox是可编辑的,我希望能够选择一部分文本,单击一个按钮,然后使用html标签封装所选文本。
例如,文本框中包含以下文字:
快速的棕色狐狸跳过懒狗。
如果我选择“快速棕狐”并点击按钮,我希望文字成为<i>The quick brown fox</i>
如何检测所选文字?使用winforms,您可以使用richtextbox但在标准的asp.net控件中没有这样的东西。它也必须是一个asp:texbox控件。
答案 0 :(得分:1)
您可以使用CKEditor作为高级html编辑器而不是textarea。 http://ckeditor.com/
答案 1 :(得分:0)
Telerik有一个非常好的富文本框编辑器。 http://www.telerik.com/developer-productivity-tools.aspx
答案 2 :(得分:0)
我很少推荐这个,因为控件有点笨重,但你可以使用ASP.NET AJAX Control Toolkit。只需按照网站上的说明安装工具包,并在项目中包含DLL。
该工具包有一个扩展程序,您可以将其应用于名为HTMLEditorExtender
的普通<asp:TextBox>
。请参阅链接页面上的示例以获取该功能。基本上,您所要做的就是将HTMLEditorExtender
标记指向现有的TextBox
控件。
以下是该页面上示例的简化版本:
<ajaxToolkit:HtmlEditorExtender ID="HtmlEditorExtender1"
TargetControlID="yourTextBoxID" DisplaySourceTab="true"
runat="server"/>
<Toolbar>
<ajaxToolkit:Bold />
<ajaxToolkit:Italic />
<ajaxToolkit:Underline />
<ajaxToolkit:StrikeThrough />
<ajaxToolkit:RemoveFormat />
<ajaxToolkit:BackgroundColorSelector />
<ajaxToolkit:ForeColorSelector />
<ajaxToolkit:FontNameSelector />
<ajaxToolkit:FontSizeSelector />
</Toolbar>
</ajaxToolkit:HtmlEditorExtender>
请注意,您需要将TargetControlID="yourTextBoxID"
中的“yourTextBoxID”设置为您希望扩展程序应用于的TextBox控件的ID。