wolverine: Angeklickter Link name herausfinden

Hallo zusammen

Ich habe eine html Datei mit vielen Imagelinks. Jetzt möchte ich mit Javascript den name="" des angeklickten Links herausfinden um dann in einem Frame Infos darüber auszugeben.

Meine Imagelinks:

<?php  
$dir = "bergseen/";  
$seenamen = scandir($dir);  
sort($seenamen);  
$anzahl = count($seenamen);  
$menge = $anzahl-"2";  
echo '<html>';  
echo '<script src="bergseen.js" type="text/javascript"></script>';  
echo ''.$menge.' Bergseen<br><br>';  
for ($a = 0; $a < $anzahl; $a++)  
{  
    if ($seenamen[$a] != '.' && $seenamen[$a] != '..')  
    {  
    echo '<a name="'.$seenamen[$a].'" href="bergseen/'.$seenamen[$a].'" target="bergseen" onclick="Infos()"><img src="bergseen_s/'.$seenamen[$a].'" border="0" alt=""></a>';  
    echo '<br>';  
    $alt = array("_","1",".jpg");  
    $neu = " ";  
    $see = str_replace($alt,$neu,$seenamen[$a]);  
    $endname = ucfirst($see);  
    $alt1 = "Ae";  
    $neu1 = "&Auml;";  
    $endseename = str_replace($alt1,$neu1,$endname);  
    echo $endseename;  
    echo '<br><br>';  
    }  
}  
echo '</html>';  
closedir($dir);  
?>

Die jetztige Javascript Datei:

function Infos()  
{  
var infoname = document.links.this.name;  
alert(infoname);  
//Habe es auch schon mit var infoname = this.name; probiert  
}

Danke viel mals!

  1. Hallo zusammen

    Hallo wolverine,

    bei Javascript-Problemen poste bitte den Code, der beim Client rausfällt und nicht den Code, der das erzeugt.
    So auf den ersten Blick weiß ich auch nicht so recht, aber als Workaround übergib doch einfach den Namen...

      
    
    >     echo '<a name="'.$seenamen[$a].'" href="bergseen/'.$seenamen[$a].'" target="bergseen" onclick="Infos(\''.$seenamen[$a].'\')"><img src="bergseen_s/'.$seenamen[$a].'" border="0" alt=""></a>';  
    
    

    function Infos(infoname)

    {
    //var infoname = document.links.this.name;
    alert(infoname);
    //Habe es auch schon mit var infoname = this.name; probiert
    }

  2. Hallo,

    Ich habe eine html Datei mit vielen Imagelinks. Jetzt möchte ich mit Javascript den name="" des angeklickten Links herausfinden um dann in einem Frame Infos darüber auszugeben.

    dann bitte mal Butter bei die Fische: Was hast du vor gut vier Wochen, als du die Frage schon einmal gestellt hattest, nicht verstanden? Ich hatte dir die Lösung doch schon genannt.

    Ansonsten - wenn ich mal flüchtig über deinen PHP-Code drüberschaue ...

    $menge = $anzahl-"2";

    Das ist Unfug: Wie kommst du auf die Idee, einen _String_ subtrahieren zu wollen? Wenn du den Zahlenwert 2 meinst, dann schreib das soch auch so.

    echo ''.$menge.' Bergseen<br><br>';

    Das ist auch Unfug: Erst einen Leerstring notieren, um dann daran noch etwas anzuhängen.

    function Infos()

    {
    var infoname = document.links.this.name;
    alert(infoname);
    //Habe es auch schon mit var infoname = this.name; probiert
    }

      
    Ich sagte doch schon: Innerhalb des Eventhandlers ist this eine Referenz auf das auslösende Element, hier also den Link. Wenn du aus dem Eventhandler eine weitere Funktion aufrufst, musst du this aber als Parameter an die Funktion übergeben.  
      
    Ciao,  
     Martin  
    
    -- 
    Idealismus wächst mit der Entfernung zum Problem.  
    Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
    
  3. Hallo wolverine,

    wie wäre es denn so:

    '[code lang=html]<a name="'.$seenamen[$a].'" href="bergseen/'.$seenamen[$a].'" target="bergseen" onclick="Infos(this)"><img src="bergseen_s/'.$seenamen[$a].'" border="0" alt=""></a>';[/code]

    function Infos( obj ){  
       alert( obj.name );  
    }
    

    ???
    Gruß Gernot

    1. Danke viel mals Gernot
      Es funktioniert!!