zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Javascript & Ajax
Seite neu laden getElementsByName "is undefined"

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 24.05.2011, 17:56
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 09.06.2009
Beiträge: 15
Snorfes befindet sich auf einem aufstrebenden Ast
Frage getElementsByName "is undefined"

Moin,

ich habe Gestern das erste Mal mit Javascript angefangen etwas probieren, und mir ist nun wahrscheinlich ein Anfängerfehler passiert - kann mir jemand auf die Sprünge helfen?

block ist ein Zweidimensionales-Array am Anfang initialisiert wird ... oder wie man das nennt.
Das Script soll nun die Tabellenhöhen ausmessen und immer soviele Tabellen sichtbar lassen / machen das sie nicht größer als 350px sind.
Wenn ich allerdings zu dem Code komme,
Code:
 document.getElementsByName("GB_table")[block[i][a]].style.display = "none";
wirft mir FF4 diesen Fehlerbericht entgegen
Code:
Fehler: document.getElementsByName("GB_table")[block[i][a]] is undefined
Quelldatei: http://127.0.0.1/test.php
Zeile: 122
Wenn ich mir aber
Code:
block[1][1]
als Text ausgeben lasse, erhalte ich den gewünschten Wert 4.

Code:
  function GB_seiten()
   {
    var hoehe = new Array();
    var block_nr = 0;
    
    for(var i=nr; i>0; i--)
    {
     hoehe[i] = document.getElementsByName("GB_table")[nr-i].offsetHeight;
    }
    
    for(var i=nr;i>1;i--)
    {
     var block_nr_nr=0;
     var rechen_hoehe;
     rechen_hoehe=hoehe[i];
     block_nr++;
     block[block_nr]=new Array();
     block[block_nr][0]=block_nr;
     block_nr_nr++;
     block[block_nr][block_nr_nr]=i;
     
     for(var a=i-1; a>0;a--)
     {
      if((rechen_hoehe + hoehe[a])<350)
      {
       block_nr_nr++;
       block[block_nr][block_nr_nr]=a;
      }
      else
      {
       a=0;
      }
     }
     
    }
    seite(1);
   }
   
   function seite(Seiten_anzahl)
   {
    var Seiten_html="";
    for(var i=1; i<block.length; i++)
    {
     Seiten_html = Seiten_html+ "<a onclick=\"seite("+i+");\">"+i+"</a>";
    }
    document.getElementById("GB_seiten").innerHTML = Seiten_html;
    
    for(var i=1; i<block.length; i++)
    {
     for(var a=1; a<block[i].length; a++)    
     {
      document.getElementsByName("GB_table")[block[i][a]].style.display = "none";
     }
    }
    
    for(var i=1; i<block[Seiten_anzahl].length; i++)  
    {
     document.getElementsByName("GB_table")[block[Seiten_anzahl][i]].style.display = "block";
    }
     
   }

Vielen Dank an jeden der mir helfen will!


PS. ich kann leider erst Morgen antworten
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 25.05.2011, 18:52
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 09.06.2009
Beiträge: 15
Snorfes befindet sich auf einem aufstrebenden Ast
Reden

Hat sich schon erledigt!
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 25.05.2011, 20:38
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

Zitat:
Zitat von Snorfes Beitrag anzeigen
Hat sich schon erledigt!
Und wiesooooo?
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
  #4 (permalink)  
Alt 26.05.2011, 12:10
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 09.06.2009
Beiträge: 15
Snorfes befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Thielo Beitrag anzeigen
Und wiesooooo?
Ich habe noch weiter im Internet herum gestochert, und bin auf eine Lösung gestoßen die funktioniert.

Der Code sieht nun so aus
Code:
 var tabellen = document.getElementsByName("GB_table");
    
    for(var i=1; i<block.length; i++)
    {
     for(var a=1; a<block[i].length; a++)    
     {
      var hilfe = nr - block[i][a];
      tabellen[hilfe].style.display = "none";
     }
    }
Damit bekomme ich keine Fehler mehr - Problem gelöst
Mit Zitat antworten
Antwort

Stichwörter
elements, get, name, undefined

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus



Alle Zeitangaben in WEZ +2. Es ist jetzt 06:37 Uhr.