7

我无法为这个主题写一个好的标题,因为我的问题有点奇怪。我在我的网站中使用 AjaxControlToolkit HTMLEditorExtender 来发送 HTML 格式的电子邮件。粗体、斜体、下划线等所有其他功能都可以正常工作,但是当我添加链接时,它会显示它的 HTML 代码,如下所示:

在此处输入图像描述

如您所见,BOLD正在工作,但锚标记以 HTML 代码格式显示。

扩展器和文本框的代码:

<asp:TextBox ID="TextBox2" runat="server" Height="376px" 
                TextMode="MultiLine" Width="795px"></asp:TextBox>
            <asp2:HtmlEditorExtender ID="TextBox2_HtmlEditorExtender" 
    runat="server" Enabled="True" TargetControlID="TextBox2">
</asp2:HtmlEditorExtender>

谁能告诉我为什么会这样?这是扩展器的一些错误吗?

4

3 回答 3

1

考虑到我没有足够的声誉来评论这篇文章,我会在这里问一个后续问题。有什么方法可以让我们看到您在 C# 后端收到的文本?如果字符串有一些奇怪的格式,这可能是问题的根源。

另外,电子邮件客户端并不意味着是浏览器,并且电子邮件客户端可能无法正确呈现 html。

于 2013-03-19T19:21:30.007 回答
1

该图像是编辑器本身的屏幕截图吗?我使用您的相同代码创建了自己的测试项目。

另外,您是如何创建链接的?我输入了一些突出显示文本的文本并单击了“创建链接”图标,然后我从那里输入了 URL。它按预期创建了链接。

唯一的区别是我没有费心实施消毒剂,看来你做到了。我会尝试禁用消毒剂(仅出于测试目的),看看这是否是您的问题所在。

于 2013-03-22T18:57:05.613 回答
0

试试这个应该可以解决你的问题-

txtEmialMsg.Text=Server.HtmlDecode(ActualStringFromExtender.ToString());

或者,如果您收到(A href)文本,那么您需要在发送电子邮件时使用以下内容

Server.UrlDecode(link) 
于 2013-03-26T08:44:46.957 回答