Also ich raff das nicht! Manchmal werden die width-Attribute berücksichtigt und manchmal nicht! Um mal etwas weiter auszuholen:
Ich hab eine Klasse FlexTable, welche beim erzeugen auch eine Tabelle (DOM-Objekt) erzeugt. Diese kann man dann eben wie jedes DOM-Objekt irgendwo einhängen.
Weiterhin hat die Klasse FlexTable ne Methode namens addRow(options), die eine neue Zeile hinzufügt, wobei options ein objekt mit allen Eigenschaften ist, die ich gerne in die neue Zeile schreiben möchte.
Außerdem gibt es eine Methode clear(), die einfach alle Zeilen löscht!
Mein Quelltext:
var daten = Json.evaluate(daten); //daten sind aus einer AJAX-Anfrage, Json ist ne Mootools-Klasse
table.clear(); //Löscht alle Zeilen aus der Tabelle
for(var i=1; i<=daten[0].rows; i++)
{
table.addRow({ //Fügt eine neue Zeile in die Tabelle ein
cols: [
{value:' + '},
{value: daten[i].name},
{value: 'Show'},
{value: 'Edit'},
{value: 'Delete'}],
options: daten[i]
});
}
Das Merkwürdige: Wenn ich mittels Firebug einen Breakpoint beim Anfang der for-Schleife setze, dann werden die width-Attribute ignoriert. Wenn ich dies nicht tue und das Script ohne Unterbrechung durchlaufen lasse werden sie berücksichtigt! (Die width-Attribute wurden schon vorher für jede Spalte eingestellt und jetzt für jede Zelle übernommen!). Außerdem ist mir aufgefallen, dass die width-Attribute nicht berücksichtigt werden, wenn die Tabelle von vornherein leer ist! Wird sie allerdings erst in dieser Funktion geleert und direkt danach wieder mit neuen Zeilen gefüllt werden die width-Attribute berücksichtigt!
Vielleicht hat einer ne Idee, warum das so ist!
MfG Niko