3

我正在尝试使用 Ajax Toolkit HTMLEditor(2012 年 6 月发布)来改进用于发布新闻项目和链接(主要是内部资源)的严格内部应用程序。除了我无法让链接创建者创建要在新窗口中打开的链接(基本上带有'target =“_blank”'标签)之外,一切都运行良好。

我已经公开了源代码选项卡并尝试手动将 'target="_blank"' 标记添加到链接中,但这似乎破坏了 HTML 显示,并且我的应用程序显示了原始 HTML 代码而不是呈现的 HTML。如果我使用链接创建器并且不更改它创建的链接,那么一切正常,当然链接会在同一个窗口中打开。消毒剂打开或关闭没有区别。

到目前为止,我还没有发现任何关于如何完成我想要完成的事情的文档。有什么想法吗?

4

1 回答 1

2

好吧,想通了,现在我觉得很愚蠢。所需要的只是使用正则表达式来查找链接模式并将其替换为包含 target="blank" 标记的模式。我只是将扩展文本框生成的文本输入以下函数:

Protected Function addLinkTarget(ByVal strText As String) As String
    Dim pattern As String = "(?<start><a[^>]*)(?<end>>)"
    Dim repl As String = "${start} target=""_blank"" ${end}"
    strText = Regex.Replace(strText, pattern, repl)
    Return strText
End Function

或者,在 C# 中

protected string addLinkTarget(string strText)
{
    string pattern = "(?<start><a[^>]*)(?<end>>)";
    string repl = "${start} target=\"_blank\" ${end}";
    strText = Regex.Replace(strText, pattern, repl);
    return strText;
}
于 2012-08-08T15:34:09.487 回答