Ergebnis 1 bis 9 von 9
  1. #1
    Tsutomu Shimomura Avatar von -=Player=-
    Registriert seit
    15.02.2006
    Beiträge
    1.549

    Standard getElementById

    hab folgenden Code:

    HTML-Code:
    <script type="text/javascript">
        document.getElementById("test").innerHTML = "aaaa"; 
    </script>
    <div id="test"></div>
    wie man sehen sollte, muss eigentlich der Inhalt des DIV's "Test" mit dem Text aaaa ersetzt werden.
    Doch es funktioniert einfach nicht.

    Fehlerkonsole gibt folgendes aus:
    document.getElementById("test") is null

    ich komme einfach nicht drauf, warum es nicht funktioniert.
    Vielleicht kann mir jemand helfen

    hab schon probiert, den Inhalt des divs vorher zu füllen und auch den DIV über den javascript zu stellen. ging aber auch nicht.

  2. #2
    Der mit Anatidaephobie Avatar von blackberry
    Registriert seit
    11.07.2008
    Beiträge
    2.350

    Standard

    Der JavaScript Code wird ausgeführt bevor das DIV erstellt wird.
    Ein DIV mit der ID "Test" existiert zu der Ausführzeit folglich nicht.

    Du könntest deinen JS Code nach unten rücken oder mit setTimeout eine Funktion nach ein paar Millisekunden aufrufen (10 sollten reichen).


    EDIT:
    Folgender Code funktioniert (FireFox 3.0.13):
    HTML-Code:
    <script type="text/javascript">
        function DasIstEineFunktion()
        {
            document.getElementById("test").innerHTML = "aaaa";
        }
        setTimeout('DasIstEineFunktion();', 1); // 1 schien genug zu sein...
    </script>
    <div id="test"></div>
    Geändert von blackberry (16.08.2009 um 19:43 Uhr)

    PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
    please do feed the trolls crew and elk
    Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
    "Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
    Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
    An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^

  3. #3
    Stiller Leser
    Registriert seit
    03.10.2007
    Beiträge
    67

    Standard

    Blödsinn! Alles was du brauchst ist eine Funktion:
    Code:
     
    <html>
    <head>
        
    <script type="text/javascript">
        function textChange(text) {
              document.getElementById("test").innerHTML = text;
        }
    </script>
    
    </head>
    
    <body onload="textChange('fuubar')">    
    <div id='test'></div>
    </body>
    
    </html>
    Geändert von crusher (16.08.2009 um 19:48 Uhr)

  4. #4
    Tsutomu Shimomura Avatar von -=Player=-
    Registriert seit
    15.02.2006
    Beiträge
    1.549

    Standard

    das haut Auge auch gesat, doch dann sollte das hier:
    <div id="test"></div>

    <script type="text/javascript">
    document.getElementById("test").innerHTML = "aaaa";
    </script>
    funktionieren. Tut es aber auch nicht. Fehlerkonsole gibt die gleiche meldung wie oben aus


    @crusher:
    wenn du das mit funktion meinst:
    <script type="text/javascript">
    function jstest(){
    document.getElementById("test").innerHTML = "aaaa";
    }
    jstest();
    </script>

    funktioniert es auch nicht

    p.s. das mit dem timeout funktioniert, nur blöd, dass man warten muss

  5. #5
    Transpinguin Avatar von IRET
    Registriert seit
    02.09.2008
    Beiträge
    1.295

    Standard

    Kann dir leider nur das was mein Vorposter auch gesagt habe sagen.
    Mit einer Funktion geht das sicher.
    Is ja nicht so viel Aufwand oder?

  6. #6
    Stiller Leser
    Registriert seit
    03.10.2007
    Beiträge
    67

    Standard

    Das funktioniert auch.
    Code:
    <html>
    <head>
    </head>
    
    <body>    
    <div id='test'></div>
    </body>
    
    <script type="text/javascript">
              document.getElementById("test").innerHTML = 'text';
    </script>
    
    </html>
    Aber nur wenn der <script> Teil nach </body> kommt

  7. #7
    Der mit Anatidaephobie Avatar von blackberry
    Registriert seit
    11.07.2008
    Beiträge
    2.350

    Standard

    Das Timeout ist mit 1 Millisekunde wohl nicht maßgebend.

    PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
    please do feed the trolls crew and elk
    Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
    "Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
    Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
    An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^

  8. #8
    Stiller Leser
    Registriert seit
    03.10.2007
    Beiträge
    67

    Standard

    Doch...
    Pausen sind immer schlecht.


    Script nach </body> -> Alles Prima
    (Dafür hat in dem 1. Example "onLoad()" gesorgt und im 2. der abgeschlossene Body Tag)


    Lösung 1:


    Lösung 2:
    Geändert von crusher (16.08.2009 um 20:00 Uhr)

  9. #9
    Tsutomu Shimomura Avatar von -=Player=-
    Registriert seit
    15.02.2006
    Beiträge
    1.549

    Standard

    ok funktioniert jetzt alle wieder. Danke

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •