gruss Jürgen,
... Ich muss, um den Link auf die sort-Methode zu setzen,
wissen, wie das Objekt heißt. Mein momentaner Ansatz sieht
so aus:
...
mhh ... ein ansatzt, wenn auch ein dreckiger, eigentlich
nicht zu empfehlender - und Daniel hat schon alles ueber
das warum gesagt - waere dieser:
a) Du hast eine voll kontrollierbare statische umgebung,
in dem sinne, dass es eine endliche anzahl von html-
tabellen mit einem einheitlichen namens-schema ueber
deren id-attribute gibt;
b) eine initialisierungsfunktion fischt sich alle table-
knoten aus dem DOM und prueft deren ids auf diese
namenskonvention;
c) fuer jede zum schema passende html-tabelle wird ein
globales js-objekt erzeugt - nach dem jetzigen schema
koennte das dann so aussehen:
var tableCollection = document.getElementsByTagName("table");
if (tableCollection) {
var i, node, varName, objCounter = 0;
for (i=0; i<tableCollection.length; i++) {
node = tableCollection[i]
if (node.id && (node.id != "")/*&& weiter bedingungen*/) {
varName = "tabelle" + objCounter;
window[varName] = new JB_Table(node, .., varName);
//hier werden globale variablen
//mit dem namen "varName" erzeugt;
objCounter ++;
}
}
}
der konstruktor erhaelt dann statt der node-id gleich die
dom-referenz auf den html-table und "varName" wird als
name des gerade global zu erzeugenden "JB_Table"-objekts
dem konstruktor zur weiterverwendung mitgegeben:
this.windowName = varName;
d) wenn jetzt link-text generiert werden soll, kann auf
"this.windowName" zugegriffen werden - ungefaehr so:
linkText = "javascript:" + this.windowName + ".sort()";
was fuer z.b. "var Tabelle2 = new JB_Table(.., .., ..);"
und einer methode "sort" fuer jedes "JB_Table"-objekt
diesem hier entspraeche: "Tabelle2.sort();"
e) nocheinmal: sobald eine umgebung nicht in diesem masse
gewaehrleistet werden kann, muss man sich Daniels argu-
mentation beugen;
by(t)e by(t)e - peterS. - pseliger@gmx.net
sh:| fo:) ch:? rl:| br:& n3:} n4:# ie:| mo:{ va:| de:[ zu:] fl:) ss:) ls:& js:)