Hallo,
Dank an Alex für die Antwort.
Hab mir das alles mal so angeschaut und kann die Bedenken gegen eval() durchaus nachvollziehen.
Bin auch selbst schon immer recht zurückhaltend mit der Verwendung gewesen, weiß jetzt auch warum.
Hatte auch ganz gezielt eval(a).title und nicht eval(a+'.title') verwendet.
Denke, wenn mans nicht übermäßig einsetzt, kann mans durchaus mal verwenden, um sich ne Variable oder ein Objekt zu holen an das man nur über z.B. einen zusammengesetzten String rankommt.
Da muß man halt abwägen.
zum Skript:
wenn die einzelnen 'activity's in nem Array gespeichert sind, brauchts auch weder eine 'id' noch ein 'eval()' in dem script, man muß ja keine Namen übergeben.
Wenn man 'edit()' ein wenig abändert, kann man auch alles über den Array-Index laufen lassen:
<script language="JavaScript">
<!--
function activity(title){
this.title = title;
}
function edit(a){
alert(test[a].title);
}
function writeTitle(a){
window.document.write("<a href="javascript:edit("+a+");">"+test[a].title+"</a></br>");
}
var test = new Array();
test[0]=new activity("Titel1");
test[1]=new activity("Titel2");
test[2]=new activity("Titel3");
for(i=0; i<3; i++){
writeTitle(i);
}
//-->
</SCRIPT>
gruß an alex und anne (und auch alle)
ptr