Archivlink: javarea.de Forum > JavaScript > Prüfen, ob ein HTML-Tag mit bestimmter id existiert
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Prüfen, ob ein HTML-Tag mit bestimmter id existiert

Pages: [1]

geschrieben von Pablo am 05.04.2005 - 15:58
Hi,

kann ich irgendwie mit JavaScript prüfen - ohne dabei einen Fehler zu verursachen - ob es ein HTML-Tag mit einer bestimmten ID bereits gibt?

HTML-Quelltext
1: 
if(document.getElementById('submenu2'))

klappt zwar, verursacht jedoch einen Fehler, wenn submenu2 nicht vorhanden ist.

Und eine Funktion, wie isset() bei PHP konnte ich nicht finden.

Pablo

geschrieben von Michael am 05.04.2005 - 16:56
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
<body>
<div id="test"></div>

<script type="text/javascript">
<!--
if(document.getElementById("test")){
  alert("Die ID existiert");
}
else alert("Fehler");
//-->
</script>

</body>


anstatt den alerts wählst du dann halt andere Aktionen...

geschrieben von Pablo am 05.04.2005 - 17:04
Das habe ich ja schon. Und das erzeugt einen Fehler, wenn die ID nicht vorhanden ist.

Zitat
 Error: document.getElementById("submenu2") has no properties
Source File: http://localhost/mambo/index.php?op....p;Itemid=2
Line: 24

Gerade das soll nicht auftreten.

Pablo

geschrieben von Michael am 05.04.2005 - 17:08
Also bei mir nicht!?
IE 6 SP1

geschrieben von Pablo am 05.04.2005 - 17:14
Bei mir schon.
IE 6 SP 2 und FX 1.0.2 und OP 7.5.4u2.

In allen die gleiche Meldung, nur anders formuliert.

Pablo

geschrieben von Malleus am 05.04.2005 - 21:13
Bei mir funktioniert' auch:
XP SP1, MSIE 6.0 SP1, Opera 7.54 und FF 1.02

Kannst Du 'mal ein komplettes Testscript posten bzw. online stellen?

Frank

geschrieben von Pablo am 05.04.2005 - 21:46
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
function hidesubmenu() {
    /* Testbereich Anfang */
    if(document.getElementById('submenu2')) {
        alert('vorhanden');
    }
    else {
        alert('nicht vorhanden!')
    }
    /* Testbereich Ende */
    /* Eigentliche Aufgabe */
    document.getElementById('submenu2').style.display = 'none';
}

HTML-Quelltext
1: 
2: 
3: 
<div id="submenu2">
ein Menü, das ein und ausgeklappt werden kann...
</div>


Funktionieren tuts bei mir ja auch überall wunderbar, aber der Fehler...

Pablo

geschrieben von Daniel am 05.04.2005 - 21:49
Wenn die ID nicht vorhanden ist musste das Script auch abbrechen

geschrieben von Pablo am 05.04.2005 - 21:56

Ist klar, dass ein Fehler kommt. Dankö Daniel und dem fremden, mit dem ich in ICQ gechattet habe ;)

Pablo

geschrieben von Tom Dooley am 06.04.2005 - 06:01
Hi

Versuche mal die try and catch funktion um den Fehler abzufangen
http://de.selfhtml.org/javascript/b...._catch.htm

lg
thomas

geschrieben von Pablo am 06.04.2005 - 07:49
Hat ja jetzt geklappt
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
function hidesubmenu() {
    if(document.getElementById('submenu2')) {
        document.getElementById('submenu2').style.display = 'none';
    }
}


Pablo


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.