【问题标题】:Access Div tag in Page from Masterpage codebehind从 Masterpage 代码隐藏访问 Page 中的 Div 标记
【发布时间】:2022-11-14 05:31:04
【问题描述】:

我需要在页面中访问 div。

页面.aspx

<asp:Content ID="Content" ContentPlaceHolderID="ContentPlaceHolderBody1" runat="server">
<div class="table-responsive">
   <div class="card card-authentication1 mx-auto my-5" id="div_Payment" runat="server"></div>
</div
</asp:Content>

主页

protected void Admin_Load(object sender, EventArgs e)
        {
            HtmlControl control = (HtmlControl)Page.FindControl("ContentPlaceHolderBody1").FindControl("div_Payment");

HtmlControl control = (HtmlControl)Master.FindControl("ContentPlaceHolderBody1").FindControl("div_Payment");
            control.Style.Add("display", "none");
        }

没运气。

【问题讨论】:

    标签: webforms


    【解决方案1】:

    这应该有效:

    标记:

    <asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
    
        <asp:Label ID="Label1" runat="server" Text="This is fun"></asp:Label>
    
        <div class="table-responsive">
            <div class="card card-authentication1 mx-auto my-5" id="div_Payment" runat="server">xxxx</div>
        </div>
    
    
    </asp:Content>
    

    母版页后面的代码:

            System.Web.UI.WebControls.Label MyLabel1 = 
                (System.Web.UI.WebControls.Label)MainContent.FindControl("Label1");
            Debug.Print("Value of Lable 1 on child page = " + MyLabel1.Text);
    
    
            HtmlGenericControl MyDiv = (HtmlGenericControl)MainContent.FindControl("div_Payment");
    
            Debug.Print("Inner text = " + MyDiv.InnerText);
    

    因此,您不必“找到”第一个“内容”控件——它会存在。

    (你可以,但不是必需的)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-29
      • 2011-02-28
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多