[JavaScript] Tabellenzeilen lesen, löschen, schreiben
Stefan Franke
- javascript
0 Peter0 XaraX
Hallo!
Ich möchte mittels JavaScript eine Tabellenzeile einlesen, diese löschen und wieder schreiben können.
Jede Tabellenzeile ist durch eine ID zu identifizieren.
Ich schaffe es die Zeile auszulesen und zu löschen, wie kann ich sie aber wieder an ihre Ursprüngliche Position schreiben?
//lesen
var zeile = document.getElementById(tabellen_id).rows[zeilen_id];
//löschen
document.getElementById(tabellen_id).deleteRow(zeilen_id);
Sinn des ganzen ist ei Baummenu das mit JavaScript realisiert werden soll.
Für denk anstöße bin ich sehr dankbar.
Mit freundlichen Grüßen
Stefan Franke
Hallo!
Ich möchte mittels JavaScript eine Tabellenzeile einlesen, diese löschen und wieder schreiben können.
Jede Tabellenzeile ist durch eine ID zu identifizieren.
Ich schaffe es die Zeile auszulesen und zu löschen, wie kann ich sie aber wieder an ihre Ursprüngliche Position schreiben?
//lesen
var zeile = document.getElementById(tabellen_id).rows[zeilen_id];//löschen
document.getElementById(tabellen_id).deleteRow(zeilen_id);Sinn des ganzen ist ei Baummenu das mit JavaScript realisiert werden soll.
Für denk anstöße bin ich sehr dankbar.
Mit freundlichen Grüßen
Stefan Franke
hoffe, das Quellcodeschnipsel hilft...
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="JavaScript" type="text/javascript">
function textAusgeben(){
alert(document.getElementById("myID").firstChild.data);
}
function textAendern(){
document.getElementById("myID").firstChild.data="so geht's!";
//oder halt den zu ändernden text als Parameter entgegenehmen
}
</script>
</head>
<table>
<tr>
<td id="myId">Mein Text
</td>
</tr>
</table>
<br/>
<a onclick="textAusgeben()">textAusgeben</a>
<a onclick="textAendern()">textAendern</a>
<body>
</body>
</html>
Hallo Stefan,
wäre es nicht Sinnvoller nur den Inhalt zu überschreiben?
Meine for - stellung zu dem ganzen:
for(i=0;i<document.getElementById(table_id).childNodes[0].childNodes.length;i++)
{
document.getElementById(table_id).childNotes[0].childNotes[i]="neuer Inhalt oder ' '"
}
Gruß aus Berlin!
eddi
wäre es nicht Sinnvoller nur den Inhalt zu überschreiben?
Nicht wirklich, da ich die Struktur auch grafisch darstellen lasse und die Zeile "hart" löschen muss.
dann wird es alles etwas ausufernder:
http://aktuell.de.selfhtml.org/artikel/javascript/table-obj/
Gruß aus Berlin!
eddi
gruss Euch Beiden,
dann wird es alles etwas ausufernder:
http://aktuell.de.selfhtml.org/artikel/javascript/table-obj/
"ausufernd" im sinne eines nicht wirklich richtig zu ende
gedachten programmierkonzepts ist das richtige wort fuer
den von mir dort verbrochenen quellcode - das fuer einen
effektiven objektorientierten js-code so wichtige konzept
der "prototypen" wird in diesem feature glatt von mir
unterschlagen, da ich zu diesem zeitpunkt gerade die ersten
schritte ueberhaupt in richtig oo machte und damals die
maechtigkeit und die moeglichkeiten dieser sprache eben
nur faszinierend erahnte aber bei weitem nicht alle
zusammenhaenge wirklich so begriff, um mich der mittel,
die einem dort an die hand gegeben werden, auch umfassend
und sinnvoll bedienen zu koennen;
einmal im jahr nehme ich mir das "table objekt" zur brust,
um den code zu aktualisieren - wenn ich dann irgendwann
mal feststellen sollte, dass es (fast) nichts mehr zu
optimieren gibt, folgt ganz bestimmt die aktualisierung
des von XaraX verlinkten feature artikels;
code-masochisten kann ich bis dahin nur
auf die letzten baustellen verweisen:
30.04.2003 - (86.5 kByte)
http://www.pseliger.de/jsExtendedApi/__tableConstructor.prev.030430.html
09.05.2003 - (86.7 kByte)
http://www.pseliger.de/jsExtendedApi/__tableConstructor.prev.030509.html
18.06.2003 - (70.4 kByte)
http://www.pseliger.de/jsExtendedApi/__tableConstructor.prev.030618.html
29.06.2003 - (72.1 kByte)
http://www.pseliger.de/jsExtendedApi/__tableConstructor.prev.030629.html
30.06.2003 (ein aufgehuebschtes "030629")
http://www.pseliger.de/jsExtendedApi/__tableConstructor.test.html
zur verfuegung stehen die methoden:
- TableCell.removeArguments
- TableCell.setArguments
- TableRow.removeArguments
- TableRow.setArguments
- Table.removeArguments
- Table.setArguments
- Table.getCode
- Table.insertRows
- Table.appendRows
- Table.removeRows
- Table.insertCols
- Table.appendCols
- Table.removeCols
den inhalt einer zelle setzt man
ueber das attribut "value":
- TableCell.value
abgesehen davon bieten die "Document Object Modell"e (DOM)
heutiger moderner browser genuegend moeglichkeiten, um
tabellen ohne den umweg ueber ein selbstgeschriebenes js-
objekt zu manipulieren;
@Stefan Franke:
tabellenzeilen lassen sich im DOM auch ueber die style-
eigenschaft "display" verstecken - bsp.:
document.getElementsByTagName("tr")[trId].style.display = "none";
document.getElementsByTagName("tr")[trId].style.display = "block";
so long - peterS. - pseliger@gmx.net