您的位置:首页 > 编程语言 > ASP

如何在Asp.net中使用HtmlArea编辑器

2008-03-20 21:54 309 查看
[align=center]如何在Asp.net中使用HtmlArea编辑器[/align]
[align=center]本文关键词: ASP.NET HtmlArea 编辑器 [/align]
[align=left] HtmlArea是一款很简洁的WTYSWTYG编辑器,以前我用的是FreeTextBox,缺点很多,运行速度慢,架构太复杂,不支持ajax等等,前面还特地写了一篇文章《Ajax中的UpdatePanel与Freetextbox兼容问题的初步解决方法》,现在终于痛下决心砍了。[/align]
[align=left]  HtmlArea是纯JS+Html的编辑器,理论上可以套在任何语言平台上,经过实际使用可以和Asp.Net 2.0 + Ajax 很好的结合,现在本博客系统已经拿它当作文章编辑器了,下面就是具体安装步骤。[/align]
[align=left]  首先下载HtmlArea3.0,解压到Web项目的某个目录。[/align]
[align=left]  lang/gb.js 是中文语言文件,官方默认是ANSI编码的,如果你的web.config设置为utf-8(默认),则需要用记事本打开gb.js,另存为utf-8格式。[/align]

[align=left]以下是引用片段:
<script type="text/javascript"> _editor_url = "../HtmlArea/"; _editor_lang = "gb";</script>[/align]
[align=left]<script type="text/javascript" src="../HtmlArea/htmlarea.js"></script>[/align]
[align=left]<asp:TextBox ID="HtmlArea" CssClass="htmlarea" runat="server" Height="200px" TextMode="MultiLine" Width="100%"></asp:TextBox>[/align]
_editor_url = "../HtmlArea/"; _editor_lang = "gb";

[align=left]以下是引用片段:
protected void Page_Load(object sender, EventArgs e){[/align]
[align=left]if (!Page.IsPostBack) {[/align]
[align=left]StringBuilder sb = new StringBuilder();[/align]
[align=left]sb.Append("var editor = null;");[/align]
[align=left]sb.Append("function initEditor() {");[/align]
[align=left]sb.Append("editor = new HTMLArea('" + ArticleBody1.FindControl("HtmlArea").ClientID + "');");[/align]
[align=left]sb.Append("editor.generate();}");sb.Append("document.body.onload=initEditor;"); [/align]
[align=left]ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "HtmlAreaScript", sb.ToString(), true);}[/align]
[align=left]}[/align]
[align=left]  如果是UpdatePanel提交,则还须在提交后执行下面语句,重新初始化编辑器:[/align]

[align=left]以下是引用片段:
  ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "HtmlAreaScript", "initEditor();", true);[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: