Wie style alternierende Zeilen in asp.net mvc

7

Ich verwende ein & lt;% foreach ...% & gt; Schleife, um eine Sammlung von Elementen auf meiner Website aufzulisten.

Ich möchte eine andere Hintergrundfarbe für den Stil alternierender Zeilen in meiner Liste hinzufügen. Ich habe einen Weg gefunden, dies zu tun, aber ich bin nicht damit zufrieden, da es wie ein Hack aussieht.

Hier ist, was ich getan habe, um es bis jetzt zu lösen:

%Vor%

Gibt es eine Best Practice, die ich vermisse, die Leute für dieses Szenario in ASP.NET MVC verwenden?

    
YeahStu 19.10.2009, 02:38
quelle

4 Antworten

12

Ich habe diesen Code-Schnipsel gefunden, den ich für viel sauberer halte.

%Vor%

Ich habe die Zählerlogik herausgenommen. Dieses JQuery-Skript manipuliert das DOM, um die css-Klasse jeder zweiten Zeile in der foreach-Schleife festzulegen.

    
YeahStu 19.10.2009, 02:44
quelle
5

Wenn Sie die gewagten Typen sind, die in CSS3 eintauchen wollen

%Vor%     
Perpetualcoder 19.10.2009 03:09
quelle
1

Wenn Sie es sauberer machen möchten, würde ich empfehlen, eine benutzerdefinierte HtmlHelper Erweiterung zu schreiben. Ich würde jQuery nicht verwenden, wie es stu42 vorschlägt, einfach weil ich Javascript nur wegen seines Verhaltens ansehen möchte. Idealerweise und hoffentlich in nicht allzu ferner Zukunft würden Sie für diesen Zweck reines CSS verwenden. Bis dahin würde ich es im Markup belassen, wie du es gerade machst, aber mit einer Erweiterung, die die Logik handhabt und sie aus dem aspx herauszieht.

    
dustyburwell 19.10.2009 02:58
quelle
1

Wenn Sie keine Klasse verwenden möchten, können Sie css direkt mit jquery setzen.

Angenommen, Ihr Tabellentag ist: <table id="tb">... , müssen Sie nur Ihren HTML-Code wie folgt setzen:

%Vor%     
Junior M 10.04.2010 17:10
quelle