Tabellenzeile ermitteln
Lorenz
- javascript
Hallo,
ich erstelle mit einem script eine Tabelle x- zeilen lang und 2 Spalten Breit. Die zweite spalte enthält immer den Text "Eigenschaft deakivieren".
BEi einem klick auf "Eigenschaft deakivieren" in der dritten Zeile, soll sich auch der Text in der dritten ändern, oder die Zeile ganz gelöscht werden.
Wie kann ich dies erreichen?
mfg
M. Lorenz
hi,
ich erstelle mit einem script eine Tabelle x- zeilen lang und 2 Spalten Breit. Die zweite spalte enthält immer den Text "Eigenschaft deakivieren".
BEi einem klick auf "Eigenschaft deakivieren" in der dritten Zeile, soll sich auch der Text in der dritten ändern, oder die Zeile ganz gelöscht werden.
Wie kann ich dies erreichen?
"Eigenschaft deakivieren" ist also ein link, der onClick eine javascript-funktion aufruft, nehme ich an?
dann schreibe in diesen aufruf beim dynamischen erzeugen der tabelle jeweiles einen parameter mit hinein, onClick="meine_funktion(3);"
das nur als kleine anregung zur im titel gestellten frage.
ich nehme mal an, für den rest, wie du das mit dem ausblenden von texten machen willst etc., hast du dir schon was überlegt ...?
denn du bist ja sicher keiner von den unverschämten leuten, die ohne selbst was zu tun hier kompletten code serviert bekommen wollen, oder?
gut.
gruss,
wahsaga
Hallo M.,
ich erstelle mit einem script eine Tabelle x- zeilen lang und 2 Spalten Breit. Die zweite spalte enthält immer den Text "Eigenschaft deakivieren".
BEi einem klick auf "Eigenschaft deakivieren" in der dritten Zeile, soll sich auch der Text in der dritten ändern, oder die Zeile ganz gelöscht werden.
Wie kann ich dies erreichen?
Du kannst jedem tr-Zeilenelement eine ID mit einer laufenden Nummer verpassen, welche du dann über beim Klick auf den Text in der zweiten Spalte ansprichst. Wenn du die Tabelle sowieso automatisch generierst, dürfte das einbringen eines Zählers kein Problem darstellen. Durch diese Zugriffsmöglichkeit kannst du den Textinhalt des Zellenelements ändern oder einfach die komplette Zeile verbergen. Ein Konzeptbeispiel über das DOM (d.h. ohne Rücksicht auf alte Browser):
function deaktivieren (nummer) {
document.getElementById('zeile'+nummer).style.display='none';
}
function aenderetext (nummer, text) {
document.getElementById('zeile'+nummer).firstChild.firstChild.data=text;
}
<table summary="...">
<caption>bla</caption>
<tr id="zeile1">
<td>eins</td>
<td><a href="javascript:deaktivieren(1);">Eigenschaft deaktivieren</a></td>
</tr>
<tr id="zeile2">
<td>zwei</td>
<td><a href="javascript:deaktivieren(2);">Eigenschaft deaktivieren</a></td>
</tr>
<!-- ... -->
<tr id="zeile5">
<td>fünf</td>
<td><a href="javascript:aenderetext(5, 'fünf geändert');">Eigenschaft deaktivieren</a></td>
</tr>
<tr id="zeile6">
<td>sechs</td>
<td><a href="javascript:aenderetext(6, 'sechs geändert');">Eigenschaft deaktivieren</a></td>
</tr>
</table>
Im öffentlichen Web ist der Einsatz natürlich insofern problematisch, dass JavaScript vorausgesetzt wird. Prinzipiell lässt sich ein solches Benutzerinterface auch serverseitig realisieren, aber ich weiß ja nicht, was du genau vorhast.
Grüße,
Mathias