• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Tabellenfilter, Spalten verrutschen

skizZ

Mitglied
Hallo zusammen,

ich habe folgenden Tabellenfilter im Einsatz

Code:
function filter2 (phrase, _id){
	var words = phrase.value.toLowerCase().split(" ");
	var table = document.getElementById(_id);
	var ele;
	for (var r = 1; r < table.rows.length; r++){
		ele = table.rows[r].innerHTML.replace(/<[^>]+>/g,"");
	        var displayStyle = 'none';
	        for (var i = 0; i < words.length; i++) {
		    if (ele.toLowerCase().indexOf(words[i])>=0)
			displayStyle = '';
		    else {
			displayStyle = 'none';
			break;
		    }
	        }
		table.rows[r].style.display = displayStyle;
	}
}

Hierbei verrutschen bzw. verkleinern sich die einzelnen <td> Felder der Tabelle. Ich kenne mich nicht wirklich mit Java Script aus. Vielleicht sieht jemand einen Fehler?

Viele Grüße
skizZ
 
Werbung:
Das hängt eher mit CSS zusammen, da ja die Darstellung verrutscht. Wenn Du mal genau in deinen JavaScript-Code schaust, so wirst Du sehen, dass dort die display-Eigenschaft verändert wird. Mal wird sie auf "none" gesetzt für ausgeblendet, dann wieder auf "" (also nichts). Und dieses "nichts" ist vermutlich das problematische, je nachdem welchen Browser Du verwendest. Um ein Tabellenelement wieder einzublenden, kannst Du für alle modernen Browser "display" von <td>'s auf "table-cell" setzen, für den IE muss man hingegen den Wert "block" verwenden.
 
Hallo,

danke für die Antwort. Hierauf habe ich allerdings festgestellt, dass dies damit zusammenhängt, dass ich "Stupid Fixed Headers" benutze. Es werden also die Spaltenüberschriften geklont und fix angezeigt. Die Spalten der Tabelle richten sich nach einer Änderung nicht mehr an den geklonten Spalten aus. Ich muss mal schaun, wie ich das irgendwie hinbekomme :-)
 
Werbung:
Zurück
Oben