Avatar billede xsix Nybegynder
06. februar 2008 - 12:38 Der er 9 kommentarer og
1 løsning

Nybegynder Spørgsmål

Hej Eksperter.
Jeg er lige begyndt at lære JavaScript, men jeg forstår simpelthen ikke hvorfor dette her ikke virker, har siddet og kigget det igennem 1000 gange snart.
Det er sikkert forholdsvis nemt, nogle der lige gider kigge på det?
På forhånd tak.
<html>
<head>
<title>w00t</title>

<script type="text/javascript">
function display()
{
var name=prompt("What is your name?");
if(name==null && name=="")
  {
document.write("Error! You did not type a name");
  }
else
  {
var hello=alert("Hello "+name);
  }
}


</head>
<body>

<input type="button" value="Click me!" onclick="display()">

</body>
</html>
Avatar billede jokkejensen Novice
06. februar 2008 - 13:38 #1
du skal bare lige lukke den </script> blok.

/JJ
Avatar billede w13 Novice
06. februar 2008 - 13:55 #2
Du bør dog nok rette:
if(name==null && name=="")
til:
if(name==null || name=="")

Det kan jo ikke være begge dele.

document.write("Error! You did not type a name");
bør være:
document.getElementById("error").firstChild.nodeValue="Error! You did not type a name";
Og så skal du oprette elementet:
<div id="error">&nbsp;</div>
der hvor teksten skal vises.

Og "var hello=" kan du vel ligeså godt fjerne. Der er ingen grund til at lægge alert-boksen i en variable.

Ellers ser det fint ud, når du bare afslutter <script ...> med </script>.
Avatar billede roenving Novice
06. februar 2008 - 14:00 #3
-- og det vil da være konceptuelt rigtigere at bruge en alert og ikke hverken en document.write eller en boks med tekst (to be alert = at være opmærksom, to be alerted = at blive gjort opmærksom på !-)
Avatar billede xsix Nybegynder
06. februar 2008 - 21:22 #4
Doh! Mange tak jokkejensen :)

w13: Jeg er som sagt kun lige startet, så er ikke nået til de lidt mere avancerede dele som "document.getElementById" kommandoer :)

roenving: Var også kun lige noget jeg lavede bare for at øve mig, men ja du har ret :)
Avatar billede w13 Novice
06. februar 2008 - 21:40 #5
Det var også kun for at hjælpe dig i den rigtige retning, når du skal lære videre. =)
Avatar billede xsix Nybegynder
06. februar 2008 - 22:47 #6
hehe jo tak, men jeg følger sådan en guide, og håber da på jeg kommer til så noget ligende på et tidspunkt :P
Avatar billede jokkejensen Novice
07. februar 2008 - 09:28 #7
Det er også vejen frem :).. tak for points..
Avatar billede xsix Nybegynder
07. februar 2008 - 12:30 #8
Så lidt, har lige et spørgsmål mere, hvis nu jeg gerne vil have den til at komme frem med sådan en "Click me!" box, efter min fejlmeddelse, hvordan gør man så det?

Man kan vist ikke bare gøre sådan som jeg ville gøre i PHP med bare at afslutte scriptet og så genoptage det, ligesom sådan her:

<script type="text/JavaScript">
function display()
{
var name=prompt("What is your name?");
if(name==null || name=="")
  {
document.write("Error! You did not type a name");
</script>
<input type="button" value="Click me!" onclick="display()">
<script type="text/JavaScript">
  }
else
  {
var hello=alert("Hello "+name);
  }
}
</script>
Avatar billede roenving Novice
07. februar 2008 - 12:42 #9
Jeg ville anbefale, at du fortsætter din guide, for når du kommer til getElementById og elementers style-properties finder du, hvad du skal bruge !-)
Avatar billede xsix Nybegynder
07. februar 2008 - 18:09 #10
Ahh okay, mange tak, så venter jeg :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester