2016-07-27 37 views
1

I check.aspx Datei haben, die hat:Wie wird ein Div aus der Master-Datei in einer anderen Aspx-Seite versteckt?

<%@ MasterType VirtualPath="~/MSW.master" %> 

Und in diesem Master-Datei Ich habe:

<%@ Register Src="UserControls/Common/StatusBar.ascx" TagName="StatusBar" TagPrefix="uc3" %> 

Und in diesem StatusBar.ascx, habe ich ein div:

<div id="status_box_content"> 
    <asp:Label ID="lblWelcome" runat="server" Text="Welcome " ></asp:Label>        
    <asp:Label ID="lbUser" runat="server"meta:resourcekey="lblFullNameResource1"></asp:Label> 
    <asp:Label ID="lblPartnerInfo" runat="server" ></asp:Label> 
    <asp:HyperLink Font-Underline="False" NavigateUrl="~/profile/Logout.aspx" 
    ID="HLinkLogout" runat="server" meta:resourcekey="HLinkLogoutResource1">Logout</asp:HyperLink> 
</div> 

Ich möchte dieses div mit id ="status_box_content" in check.aspx Datei unsichtbar sein. Aber alles andere von Master-Datei wird benötigt.

Wie mache ich das Div unsichtbar, während die Master-Datei beibehalten wird?

+0

Ich fand die Lösung ** ** dazu: In Ihrem check.aspx, das Div mit Jquery verstecken. Es funktioniert vollkommen in Ordnung. Ich habe einen großen Fehler gemacht, als ich es anrief. Also ja, es funktioniert! :) –

+0

@ShurtiAgrawal, Lade einfach deine Antwort hoch und akzeptiere sie, damit sie aus Unanswered entfernt wird. –

Antwort

1

In Ihrem check.aspx, blenden Sie die div jquery verwenden. Es funktioniert vollkommen in Ordnung. Ich habe einen großen Fehler gemacht, als ich es anrief. Also ja, es funktioniert! :)

+0

Addieren Sie den Code-Block, damit es in Zukunft anderen helfen kann. –

0

Hinweise: Machen Sie Ihre div runat = "server"

Aspx Seite

<div id="status_box_content" runat="server"> 
    <asp:Label ID="lblWelcome" runat="server" Text="Welcome " ></asp:Label>     <asp:Label ID="lbUser" runat="server"meta:resourcekey="lblFullNameResource1"></asp:Label> 
    <asp:Label ID="lblPartnerInfo" runat="server" ></asp:Label> 
    <asp:HyperLink Font-Underline="False" NavigateUrl="~/profile/Logout.aspx" 
    ID="HLinkLogout" runat="server" meta:resourcekey="HLinkLogoutResource1">Logout</asp:HyperLink> 
    </div> 

Code hinter Seite: Setzen Sie diesen Code in Ihren Inhalt page_load Ereignis

HtmlGenericControl DivCount = (HtmlGenericControl)Page.Master.FindControl("status_box_content"); 
DivCount.Visible = false; 
+0

Wenn ich dies tue, erhalte ich den unten erwähnten Fehler: ** "Parser Fehlermeldung: Nur Content-Steuerelemente sind direkt in einer Inhaltsseite erlaubt, die Content-Steuerelemente enthält". ** –

+0

Wenn ich mit der aktualisierten Antwort versuche, bekomme ich dies ** Ausnahmedetails: System.NullReferenceException: Objektreferenz nicht auf eine Instanz eines Objekts festgelegt. ** –

+0

Bitte geben Sie den vollständigen Code an, was Sie versucht haben. HTML-Code der Masterseite und Content-Seitencode –

0

Machen Sie runat= server zu Ihrem div.

Und dann beim Laden der Seite von check.aspx Gebrauch machen, dass div unsichtbar:

this.Master.findcontrol("divname").visible= false; 
0

Als div ist innerhalb UserControl und User Control innen Master Page ist, nur versuchen, den Zugang UserControl Zuerst auf Ihrer Seite, dann div herausfinden und unsichtbar machen. Sie können dies ausprobieren: zuerst die div als Server-Steuerelement machen, hinzufügen runat="server" in div:

<div id="status_box_content" runat="server"> 

    UserControl uc = ((UserControl)this.Master.FindControl("ucTopUser")); 
    HtmlGenericControl div = (HtmlGenericControl)uc.FindControl("status_box_content"); 
    div.Visible = false;