如何在Asp.net中使用HtmlArea編輯器

來源:互聯網
上載者:User

HtmlArea是一款很簡潔的WTYSWTYG編輯器,以前我用的是FreeTextBox,缺點 很多,運行速度慢,架構太複雜,不支援ajax等等,前面還特地寫了一篇文章《 Ajax中的UpdatePanel與Freetextbox相容問題的初步解決方案》,現在終於痛下 決心砍了。

HtmlArea是純JS+Html的編輯器,理論上可以套在任何語言平台上,經過實際 使用可以和Asp.Net 2.0 + Ajax 很好的結合,現在本部落格系統已經拿它當作文 章編輯器了,下面就是具體安裝步驟。

首先下載HtmlArea3.0,解壓到Web項目的某個目錄。

lang/gb.js 是中文語言檔案,官方預設是ANSI編碼的,如果你的web.config 設定為utf-8(預設),則需要用記事本開啟gb.js,另存新檔utf-8格式。

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

以下是引用片段:
protected void Page_Load(object sender, EventArgs e){
if (!Page.IsPostBack) {
StringBuilder sb = new StringBuilder();
sb.Append("var editor = null;");
sb.Append("function initEditor() {");
sb.Append("editor = new HTMLArea('" + ArticleBody1.FindControl("HtmlArea").ClientID + "');");
sb.Append("editor.generate();}");sb.Append("document.body.onload=initEditor;");
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "HtmlAreaScript", sb.ToString(), true);}
}

如果是UpdatePanel提交,則還須在提交後執行下面語句,重新初始化編輯器 :

以下是引用片段:
ScriptManager.RegisterStartupScript (this.Page,this.GetType(),"HtmlAreaScript","initEditor ();",true);

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.