Suche im Forum:
Suchen


« Vorheriges Thema anzeigen :: Nächstes Thema anzeigen »  
Autor Nachricht
Beitrag28.07.2008 um 09:48 (UTC)    
Titel: Scriptfehler?!?

Hallo,
weiß jmd ob hier ein fehler im Script is:
Code:

<html>
<head>
<title> Suche </title>
</head>
<p id="team"><a href="javascript:Team_Search()">Mannschaftssuche</a><br>
<a href="javascript:Player_Search()">Spielersuche</a>
</p>
<script language="JavaScript">
function Player_Search() {
alert ("Noch nicht vorhanden!");
}
</script>
<script language="JavaScript">
function Team_Search() {
team = prompt("Name der Mannschaft")
if(team == "Bayern") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Bayern-München.htm">Bayern München</a>";
} else {
if(team == "FCB") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Bayern-München.htm">Bayern München</a>";
} else {
if(team == "Bayern München") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Bayern-München.htm">Bayern München</a>";
} else {
if(team == "KSC") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Karlsruher-SC.htm">Karlsruher SC</a>";
} else {
if(team == "Karslsruher SC") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Karlsruher-SC.htm">Karlsruher SC</a>";
} else {
if(team == "Karlsruhe") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Karlsruher-SC.htm">Karlsruher SC</a>";
} else {
if(team == "Werder Bremen") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Werder-Bremen.htm">Werder Bremen</a>";
} else {
if(team == "Bremen") {
document.getElementById("team").firstChild.nodeValue = "<a href="www.97f-s97.de.tl/Werder-Bremen.htm">Werder Bremen</a>";
} else {
document.getElementById("team").firstChild.nodeValue = "Ihre Suche ergab keine Ergebnisse!<br><br><a href="javascript:Team_Search()">Suche neu starten!</a>";
}
}
}
}
}
}
}
}
}

</html>


Das mit der Spielersuche klappt aber in der Teamsuche is wohl n Fehler!
Danke schon mal im Vorraus!
Nico
Beitrag28.07.2008 um 12:34 (UTC)    
Titel:

Du hast für jede Funktion eigene <script>-Tags benutzt, die für die zweite Funktion aber nicht geschlossen. Und den <html> und den <head> Teil kannst du weg lassen. Das gehört nicht zum Script. Notier das einfach im Quelltextmodus in eine Seite hinein.

Hinter das prompt() kommt noch ein ;

Ich habe das mal ausprobiert. der prompt()-Teil funktioniert dann.

Allerdings sind noch eine menge Fehler im if-else-Teil des Scripts.

Sehe dir das mal an:

Code:
if(team == "Bayern") {
document.getElementById("team").innerHTML = "<a href=\"www.97f-s97.de.tl/Bayern-München.htm\">Bayern München</a>";
}


Das ist der erste Teil des Scripts. Mit firstChild.nodeValue greifst du nur auf den ersten Knoten des Elementes mit der ID team zu. du willst aber den ganzen Inhalt ändern. Ersetze das durch innerHTML. Und dann musst du mit den " aufpassen. Entweder du nutzt die einzelnen Anführungszeichen ' ' um den Link einzugrenzen oder du setzt ein \ vor die Anführungszeichen im Link. Sonst denk der Browser das der Link beim zweiten " wieder zu ende ist (grob vereinfacht gesagt).

Jetzt musst du beachten, dass du nicht so viele else zweige notieren darfst. Das ist unlogisch. if else bedeutet: entweder - oder. Bei einem entweder - oder - oder - oder - oder... weiß der Browser nicht welchen Fall er interpretieren soll.

Du hast zwei Möglichkeiten das umzusetzen.

Der if - else - if - Fall oder du machst einen case - switch.

Code:
team = prompt("Name der Mannschaft");
if(team == "Bayern") {
document.getElementById("team").innerHTML = "<a href=\"www.97f-s97.de.tl/Bayern-München.htm\">Bayern München</a>";
} else if(team == "Bayern München") {
document.getElementById("team").innerHTML = "<a href=\"www.97f-s97.de.tl/Bayern-München.htm\">Bayern München</a>";
}


Das ist der erste Fall, den anderen kannst du ja nachgooglen aber dann müsstest du mehr ändern.

Der Unterschied ist, dass du den if-Teil direkt nach dem else notierst und nicht erst eine neue { öffnest.

Erst im letzten Fall schreibst du dann eine reine else Konstruktion.


Zuletzt bearbeitet von glattwalzwerk am 28.07.2008, 14:08, insgesamt 2-mal bearbeitet
Beitrag29.07.2008 um 11:31 (UTC)    
Titel:

Kannst du mir den Code bitte ganz schreiben?
Klappt nämlich nicht...
______________
Besucht www.pirates-ban.de.tl
Beiträge der letzten Zeit anzeigen:   


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de