簡體   English   中英

HtmlEditorExtender 的回發問題

[英]Postback issue with HtmlEditorExtender

我目前正在開發一個需要 HtmlEditorExtender 的項目。 最近我在使用 HtmlEditorExtender 時遇到了一個奇怪的問題。
當我輸入文本並單擊按鈕保存時。 一切正常。 但是當我復制和粘貼文本(短文或段落)時。 HtmlEditorExtender 失去了它的價值,並且數據將不會被保存。 但是,我對常規文本框進行了相同的嘗試。 但我沒有發現他們有任何問題。 我的代碼看起來像這樣: Default.aspx:

<asp:UpdatePanel runat="server" ID="id123">
<Triggers>
<asp:PostBackTrigger ControlID="Button1" />
</Triggers>
<ContentTemplate>

<asp:TextBox ID="txtSlidePage"  TextMode="MultiLine" Columns="50" Rows="10" Width="100%" Height="200" runat="server" />

<ajaxToolkit:HtmlEditorExtender ID="HtmlEditorExtender1" TargetControlID="txtSlidePage"   runat="server" DisplaySourceTab="true">
<Toolbar>
<ajaxToolkit:Undo />
<ajaxToolkit:Redo />
</Toolbar>
</ajaxToolkit:HtmlEditorExtender>

</ContentTemplate>
</asp:UpdatePanel>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click1"  />

后面的代碼:

protected void Button1_Click1(object sender, EventArgs e)
{
Response.Write("<script>alert('" + txtSlidePage.Text + "');</script>");
}

我保持代碼簡短。 只是為了通過 Javascript Alert 查看結果。

有什么建議?

我強烈建議您使用 CKEditor。 我一直在使用它,沒有任何問題,它有一個易於使用的 asp.net 控件。 HTML 編碼和解碼的過程也很簡單。 請參考此鏈接進行演示

您還可以輕松自定義工具欄,如下所示:

<CKEditor:CKEditorControl ID="txtSlideTexts" BasePath="/ckeditor/" runat="server"  Toolbar="Basic"
    ToolbarBasic="|Bold|Italic|Underline|Strike|-|NumberedList|BulletedList|Outdent|Indent|-|JustifyLeft|JustifyCenter|JustifyRight|JustifyBlock|
    |Link|Unlink|-|TextColor|-|Undo|Redo|Cut|Copy|Paste|PasteText|PasteFromWord|
  |Find|Replace|SelectAll|-|Image|Table|HorizontalRule|SpecialChar|-|Format|" ></CKEditor:CKEditorControl>

最后在后面的代碼中:

string str = CKEditor1.Text;
string str1 = Server.HtmlEncode(str);
string str2 = Server.HtmlDecode(str);

因為它是服務器端控件。 在頁面回發問題期間,您不會遇到困難。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM