Rowspan/Colspan
Morgooth
- javascript
-1 Patrick Fischer0 dedlfix
Hi, ich wollte fragen ob es möglich ist, nachträglich mit Javascript irgendwo einen Rowspan bzw Colspan einzufügen?
<body onLoad="zusammenfügen('zeile1_spalte2','zeile4_spalte2')">
so sollte der Denkansatz sein, nur hab ich kein Plan wie und ob das irgendwie geht
Ich kenne dafür keinen Befehl.
Mit Javascript kannst du auf style-Eigenschaften zugreifen und diese veränderen oder auch den Inhalt verändern, aber Spalten-Zusammenlegungen sind damit nicht möglich.
Lässt du die Tabelle durch das JavaScript erzeugen oder aus welchem Grund möchtest du sie nachträglich veränderen, ich erkenne darin keinen Einsatz, da sich auch der Inhalt änderen müsste, damit es sinnvoll wäre.
Hi,
Ich kenne dafür keinen Befehl.
Einen Befehl gibt es sicherlich nicht dafür (;-)), aber eine Methode gibt es. document.getElementByTagName("td")[0].setAttribute("colspan","2"); entspricht <td colspan="2"> in der ersten TD (jedenfalls theoretisch - ich gehe jetzt einfach mal davon aus, daß es auch praktisch funktioniert ;-)).
Gruß, Cybaer
der übliche Flüchtigkeitsfehler:
document.getElementByTagName("td")[0]...
document.getElementsByTagName("td")[0]...
;->
Gruß, Cybaer
Hi, ich wollte fragen ob es möglich ist, nachträglich mit Javascript irgendwo einen Rowspan bzw Colspan einzufügen?
Dieses Beispiel geht mit colspan und nebeneinander liegenden Zellen. Bei rowspan sind die Prüfungen komplizierter...
<table border="1" id="table">
<tr><td id="bla">bla</td><td id="cell1">inhalt1</td><td id="cell2">inhalt2</td></tr>
</table>
<input type="button" onclick="test('cell1', 'cell2', ' ')" value="Test 1" />
<input type="button" onclick="test('bla', 'cell2', ' ')" value="Test 2" />
<input type="button" onclick="test('table', 'cell2', ' ')" value="Test 2" />
<script type="text/javascript">
<!--
// Tipperei-Verkürzung
function EL(id) {
return document.getElementById(id);
}
// Parameter: Zelle 1, Zelle 2, Verkettungszeichenkette
function test(idCell1, idCell2, glue) {
var cell1 = EL(idCell1);
var cell2 = EL(idCell2);
if (glue == null)
glue = '';
if ((cell1 == null) || (cell2 == null)) {
alert('Fehler! Angegebene Elemene sind (teilweise) nicht vorhanden.');
return;
}
if ((cell1.nodeName.toLowerCase() != 'td') || (cell2.nodeName.toLowerCase() != 'td')) {
alert('Fehler! Angegebene Elemene sind keine Tabellenzellen.');
return;
}
if (cell1.nextSibling != cell2) {
alert('Fehler! Angegebene Zellen liegen nicht nebeneinander.');
return;
}
var inhalt = cell1.innerHTML + glue + cell2.innerHTML;
cell1.innerHTML = inhalt;
cell1.colspan = 2;
var row = cell2.parentNode;
row.removeChild(cell2);
alert(row.outerHTML);
}
//-->
</script>