18 Stimmen

C# - Wie man die Attribute von HTML-Elementen ändert

Meine Master-Seite enthält eine Liste wie hier gezeigt. Was ich jedoch tun möchte, ist das Attribut "class=active" zu der Liste li hinzuzufügen, die gerade aktiv ist, aber ich habe keine Ahnung, wie das geht. Ich weiß, dass der Code im page_load Ereignis der aspx-Seite steht, aber keine Ahnung, wie ich auf die li zugreifen kann, zu der ich das Attribut hinzufügen muss. Bitte erleuchte mich. Vielen Dank.

    Screenshots
    Future
    News
    Download
    Home

0voto

Danke für die Lösung.

Minimierter Code.

Das Masterseiten-Steuerelement kann auch auf der untergeordneten Seite gefunden werden.

Ich meine, die Masterseite enthält ein HTML-Steuerelement

und die untergeordnete Seite kann das HTML-Steuerelement der Masterseite folgendermaßen finden

((HtmlControl)this.Master.FindControl("dpohome1")).Attributes.Add("class", "on");

0voto

Azum Punkte 1

Einfache Logik und minimaler Code, den ich normalerweise verwende, ist der folgende Code, besonders im dynamischen Menü. Hoffe, das hilft.

Erstellen Sie diesen Methoden-Code in der Masterpage-Code-Behind.

CODE BEHIND (C#)

protected string SetCssClass(string page) { return Request.Url.AbsolutePath.ToLower().EndsWith(page.ToLower()) ? "active" : ""; }

In den Menülistenpunkten, die Sie erstellt haben, rufen Sie diese Methode auf und übergeben den Seitennamen wie folgt:

HTML-SEITE (ASPX Inline-Code)

  • "> [Screenshots](screenshots.aspx "Screenshots")

  • "> [Future](future.aspx "Future")

und so weiter.

Mit dieser Methode müssen Sie jedes Mal, wenn Sie eine Seite und einen Link hinzufügen, nicht in jeder Seite Code schreiben. Wenn Sie den Link in der Masterpage hinzufügen, rufen Sie mit jedem

  • den SetCssClass(Seitenname) Methodenaufruf auf, um die Klasse festzulegen, und fertig. (Sie können die Methode nach Belieben umbenennen).

    Sie können längere Codes verwenden, wenn Sie pro Zeile Code bezahlt werden, denn dann ist dies nur eine Zeile Code. (lol). Nur ein Scherz. Hoffe, es hilft.

    Hinweis: Ich ignoriere andere Teile des HTML-Codes, Sie können sie auch einschließen, das würde auch funktionieren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X