Javascript: document.getElementsByName() - Frage



  • Hallo,

    hab gerade ein Problem mit folgendem Code (ist nur zu testzwecken, also hinterfragt bitte nicht den Sinn 😉 ):

    ...
    <script language="JavaScript">  
      function test() {
        var dummy = window.document.getElementsByName("page");
        alert(dummy.length);
      }
    //-->
    </script>
    
      <span name="page">1</span>
      <span name="page">2</span>
      <span name="page">3</span>
    
      ...
    

    Die Funktion test() wird bei einem Klick auf einen Anker aufgerufen.

    Im Firefox kommt die richtige Alert-Message (3), aber im Internet Explorer findet der keine Elemente (0). Ich weiß gerade nicht mehr weiter. Hab auf die schnelle nichts gefunden, ob der IE das name="" im <span> überhaupt kennt. Auf Selfhtml klappt es ja, allerdings werden dort auch <input> verwendet.

    Danke für eure Hilfe.
    Gruß bais



  • Sicher, das e dort funktioniert, das mehrere Elemente den selben namen haben?

    In deinemfall ist page != page != page
    das heisst du müsstest sie alle 3 einzeln benennen.
    Ansonsten wenn das über name nich geht, versuchs mit ID



  • Mittels ID geht ohne Probleme, aber ich wollte gerne ein Array erhalten, da ich nicht weiß, wieviele <span> ich habe. So kann ich dann das Array schön durchlaufen und kann alle <span> der Reihe nach verarbeiten...


Anmelden zum Antworten