在ASP.NET中如何编写<a> tag into another </a> <a> tag</a>

时间:2013-10-25 09:05:17

标签: html asp.net anchor

以下是我想在输出页面中编写的HTML代码:

Response.Write ("<a href=\"page2.aspx\">Page2" + 
                "<a href=\"page3.aspx\">Page3</a></a>");

我期待以下输出:

<a href="page2.aspx">
  Page2
  <a href="page3.aspx">
    Page3
  </a>
</a>

但我得到以下一个:

<a href="page2.aspx">
  Page2
</a>
<a href="page3.aspx">
  Page3    
</a>

有谁知道Response.Write关闭标记的原因以及如何更改此行为?

2 个答案:

答案 0 :(得分:3)

HTML禁止嵌套锚点。

  

内容模型:
  透明,但必须没有互动内容后代

- The a element

在浏览器尝试从错误中恢复后,ASP正在清理您的标记,或者您正在DOM检查器中查看。

答案 1 :(得分:2)

您无法将a元素嵌套在另一个a中,HTML不允许,它无效,浏览器只会将它们解析为单独的a标记。

As Per W3C 1

  

1 A元素定义的链接和锚点不得为   嵌套; A元素不得包含任何其他A元素。


如果您要在单个锚标记上打开多个链接,请考虑将onclick事件与window.open()一起使用,请参阅我的回答here以获取更多详细信息。