2012-04-06 16 views
0

Ich füge Datensatz zu Tabelle mit Ajax-Taste hinzu. Ich möchte Zebratabelle verwenden. Ich habe eine jquery-Funktion für Zebra-Tabelle. Zebra-Tisch mit Ajax Anruf

<script type="text/javascript"> 
     $(function() { 
      $("table tr:nth-child(even)").addClass("zebraTable"); 
     }); 
</script> 

CSS:

.zebraTable {background-color: #F2F2F2} 

Wenn ich auf Klick auf normale Taste aufrufen, funktioniert es wie Zebratisch. aber wenn ich Knopf mit Ajax-Knopf ändere, verwandelt Tabelle normalen Tisch. Haben Sie eine Idee?

+0

Haben Sie ein Codebeispiel, das Sie für die Schaltfläche und die Tabellenquelle bereitstellen können? – philwinkle

+0

Sie benötigen kein Javascript mehr, um diese Art von Tabelle zu erstellen. Sie sollten es direkt in Ihre CSS setzen http://www.w3.org/Style/Examples/007/evenodd.en.html – iRyusa

Antwort

0

Die Antwort hängt davon ab, was mit der Tabelle passiert ist, seit Sie die Klasse zebraTable den Zeilen hinzugefügt haben. Ich gehe davon aus, dass Ihr Ajax-Aufruf die Tabelle ändert (Ersetzen, Hinzufügen/Entfernen von Zeilen, Ausblenden/Anzeigen von Zeilen usw.)?

Beachten Sie, dass die tr-Objekte in Ihrem DOM diese Klasse beibehalten, es sei denn, Sie entfernen sie und der Selektor wird sowohl auf ausgeblendete als auch auf sichtbare tr-Objekte angewendet. Mein Vorschlag wäre, die zebraTable-Klasse aus allen Zeilen zu entfernen und sie dann erneut anzuwenden (und für versteckte tr-Objekte anzupassen, wenn Sie sie haben).

+0

Ich habe gerade den Button-Typ geändert. Ich habe Ajax-Taste anstelle von Button verwendet und dann hat Zebra-Tisch nicht funktioniert. – Selin

+1

Ah, ich dachte, du meintest einen Knopf, der Ajax macht. Klingt wie Ajax-Taste aus einer Drittanbieter-Bibliothek oder vielleicht fehlt meine Google-Fähigkeiten. Auf jeden Fall sollten Sie eine Entwickler-Toolbar verwenden (IE/Firefox/Google haben alle etwas Ähnliches), um den Vorher/Nachher-Status der Tabelle zu überprüfen. Dies sollte Ihnen helfen zu bestimmen, was Sie tun müssen, wenn Sie auf die Schaltfläche klicken. Mein Gedanke ist, dass die Schaltfläche die DOM-Elemente ändert (CSS-Stil beibehalten), während die Ajax-Schaltfläche DOM-Elemente hinzufügt/entfernt (CSS-Stile verlieren). – Mayo