【问题标题】:<a href or <asp:hyperlink.....tag does not render at runtime<a href 或 <asp:hyperlink.....标签在运行时不呈现
【发布时间】:2012-05-04 10:55:30
【问题描述】:

我正在尝试显示一个带有超链接的简单 div,该超链接代表 x 像这样:

所以,当我运行我的应用程序时,我看到了 div,但我没有看到 x,即 &lt;a href tag 这是我的代码:

<div class="success"><a href="#" class="close">&times;</a>status message here...</div>

当我查看页面的源代码时,这是它呈现的内容:

<div id="ctl00_ctl00_ContentMain_ContentMain_employee_status" class="success" style="display:block;">status message here...</div>

然后我尝试了&lt;asp:hyperlink....

 <div class="success" id="divStatus" visible="false" runat="server"><asp:HyperLink id="success" runat="server" CssClass="close" Text="&times;"></asp:HyperLink></div>

我仍然没有看到 href 标签,这是怎么回事,为什么我无法呈现 &lt;a href or &lt;asp:hyperlnk tag 任何线索?

【问题讨论】:

  • 你是在后面的代码中设置divSuccess的InnerHtml属性吗?这将删除其静态内容(超链接)。
  • 时间,是的,我正在写 InnerHtml divSuccess.InnerHtml ="status message here... 如果是擦除其静态内容的情况,那么替代方案是什么?
  • 为您发布了几个解决方案。
  • @Tim,感谢您的指点 - UPVote

标签: asp.net html


【解决方案1】:

我正在写 InnerHtml divSuccess.InnerHtml ="status message here... 如果这是擦除其静态内容的情况,那么是什么 替代?

如果divStatus 包含您想要保留的控件,那么您可以通过使用 Literal 控件并将其添加到控件集合中来附加 HTML,例如:

var lit = new Literal();
lit.Text = "my text or <strong>html</strong>";
this.divStatus.Controls.Add(lit);

或者,您可以使用另一个控件inside divStatus 并更改其内部 HTML:

<div id="divStatus" runat="server">
    <a id="lnk1">This is the link that we don't want to be removed.</a>
    <asp:Literal runat="server" id="litStatusHtml" />
</div>

【讨论】:

    【解决方案2】:

    这就是我如何解决我的问题

    divStatus.InnerHtml = "<a href='#' class='close'>&times;</a>" + "status message here...";
    

    【讨论】:

      猜你喜欢
      • 2017-06-08
      • 1970-01-01
      • 2014-09-06
      • 2014-05-12
      • 2021-03-03
      • 2014-05-01
      • 2012-05-15
      • 1970-01-01
      • 2019-10-17
      相关资源
      最近更新 更多