c# - HtmlEditorExtender 的回发问题

标签 c# asp.net postback copy-paste htmleditorextender

我目前正在开发一个需要 HtmlEditorExtender 的项目。最近我在使用 HtmlEditorExtender 时遇到了一个奇怪的问题。
当我输入文本并单击“保存”按钮时。一切正常。但是当我复制和粘贴文本(短或段落)时。 HtmlEditorExtender 失去其值(value),并且数据将不会被保存。但是,我对常规文本框进行了相同的尝试。但我没有发现他们有任何问题。 我的代码看起来像这样: 默认.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 编码和解码的过程也很简单。 请引用此链接demo

您还可以轻松自定义工具栏,如下所示:

<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);

因为它是服务器端控件。您在页面回发问题期间不会遇到困难。

关于c# - HtmlEditorExtender 的回发问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36459520/

相关文章:

c# - 按钮点击时的javascript

asp.net - 由于 .suo 文件,发布我的 Web 应用程序可能需要很长时间才能完成

c# - 页面加载时自动回发

c# - IIS服务器找不到index.aspx文件-404错误

c# - 当列表可以附加其他任务时等待 Task.WhenAny(List<T>) 的适当模式

C# 异步调用垃圾回收

c# - ServiceStack:如何在服务启动时更改API模型中的成员属性?

c# - 更新 CSV 文件 C# 中的一列

javascript - 使用 asp.net 验证控件时禁用回发按钮

c# - asp.net 在回发之间保留列表值