GetElementsByName

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • GetElementsByName

    Hallo,
    ich möchte experimentell durch eine Auswahlliste ein Popup öffnen, dort etwas auswählen und dadurch im Ursprungsfenster den Text eines Div-Tags ändern.
    Im Prinzip geht alles, nur getElementsByName(elementname) tut nicht das, was es soll.
    Ich habe das gleiche mit auch mit getElementById(elementid) probiert, was wiederum funktioniert. getElementsByName(elementname)[0] hat im Firefox funktioniert, im IE allerdings nicht. Wie wende ich getElementsByName richtig an?

    Ursprungsquelltext:

    PHP-Code:
    <html>
    <
    head>
    <
    script type="text/javascript">
    <!--
    function 
    NeuFenster() {
     
    MeinFenster =
     
    window.open("test.html""Zweitfenster""width=300,height=200");
     
    MeinFenster.focus();
    }
    //-->
    </script>
    </
    head>
    <
    body>
    <
    form name="form">
        <
    select name="auswahlliste" onChange="NeuFenster()">
            <
    option value=""></option>
            <
    option value="drucker">drucker</option>
            <
    option value="monitor">monitor</option>
        </
    select>
    </
    form>
    <
    div name="auswahl">normaler text</div> <!-- DIESES TAG SOLL GEÄNDERT WERDEN//-->
    </body>
    </
    html
    Popupquelltext:
    PHP-Code:
    <html>
    <
    head>
    <
    script language="javascript" type="text/javascript">
    <!--
    function 
    auswahl (nummer) {
    opener.document.getElementsByName(auswahl).innerHTML nummer;
    self.close();
    }
    //-->
    </script>
    </
    head>
    <
    body>
    <
    a href="javascript: auswahl('nummer 1');">nummer 1</a></br>
    <
    a href="javascript: auswahl('nummer 2');">nummer 2</a>
    </
    body>
    </
    html
    Zuletzt geändert von miguel_rkc; 10.03.2005, 15:27.

  • #2
    Re: GetElementsByName

    Original geschrieben von miguel_rkc
    PHP-Code:
    function auswahl (nummer) {
    opener.document.getElementsByName(auswahl).innerHTML nummer
    wo bitte hast du eine variable namens auswahl definiert?


    btw:
    Code:
    <div name="auswahl">normaler text</div> <!-- DIESES TAG SOLL GEÄNDERT WERDEN! //-->
    div hat kein name-attribut.
    nutze eine ID stattdessen.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Re: Re: GetElementsByName

      Original geschrieben von wahsaga
      div hat kein name-attribut.
      nutze eine ID stattdessen. [/B]
      ... was wiederum erklären würde, warum mein Vorhaben zum Scheitern verurteilt war

      so klappt der Aufruf von getElementsByName übrigens richtig:
      PHP-Code:
      document.getElementsByName('NamedesElements')[0].value 'Inhalt'
      Scheinbar muss man getElementsByName grundsätzlich wie ein Array behandeln, sprich mit Index (hier [0]). Allerdings finde ich das etwas ungünstig, da man ja in die Versuchung kommen könnte, mehreren Elementen gleichzeitig etwas antun zu wollen, ohne Schleifen benutzen zu müssen. Naja, was soll's.
      Zuletzt geändert von miguel_rkc; 10.03.2005, 16:32.

      Kommentar


      • #4
        Re: Re: Re: GetElementsByName

        Original geschrieben von miguel_rkc
        Scheinbar muss man getElementsByName grundsätzlich wie ein Array behandeln, sprich mit Index (hier [0]).
        natürlich stellt getElementsByName eine sog. collection bereit - weil ein name nun mal nicht eindeutig sein muss.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar

        Lädt...
        X