加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 什么方法可以防止母版页更改元素ID?

发布时间:2020-12-16 00:11:28 所属栏目:asp.Net 来源:网络整理
导读:我正在考虑将母版页添加到现有网站,但发现一旦我这样做,元素的ID就会附加代码(例如ctl00_MainPageContent_). 不幸的是,这会破坏页面上使用原始未修改元素ID的现有脚本. 我意识到我可以用%= Element.ClientID%替换它.但如果我完全禁用这种行为,那就太棒了.
我正在考虑将母版页添加到现有网站,但发现一旦我这样做,元素的ID就会附加代码(例如ctl00_MainPageContent_).

不幸的是,这会破坏页面上使用原始未修改元素ID的现有脚本.

我意识到我可以用<%= Element.ClientID%>替换它.但如果我完全禁用这种行为,那就太棒了.

那么,我可以保留原始ID吗?

解决方法

上一篇文章已经回答了这个问题: Remove MasterPage Generated ID

该解决方案使用以下代码覆盖Render事件:

Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
    Dim Html As New StringWriter()
    Dim Render As New HtmlTextWriter(Html)
    MyBase.Render(Render)
    writer.Write(Html.ToString().Replace("name=""ctl00$ContentBody$",_ 
                  "name=""").Replace("id=""ctl00_ContentBody_","id="""))
End Sub

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读