Avatar billede dueholm Praktikant
03. juni 2002 - 14:02 Der er 4 kommentarer og
1 løsning

Dictionary eksempel

Jeg har i min HTML-fil skrevet flg:
- - - - -
<%@ LANGUAGE=JScript %>

<html>

<%
var Capitals, CountryList, LastCountry, Num

Capitals = new ActiveXObject("Scripting.Dictionary")
CountryList = Capitals.Keys()
LastCountry = Capitals.Count -1

Capitals.Add("England", "London")
Capitals.Add("USA", "Washington")
Capitals.Add("France", "Paris")
Capitals.Add("Norway", "Oslo")
%>

The capital of France is <%=Capitals.Item("France")%><p>

<%
var Country

Country = "Denmark"
%>

Do we know anything about <%=Country%>?<br>

<%
if(Capitals.Exists(Country))
{%>
    Yes, I know the capital of <%=Country%>.<p>
    It is <%=Capitals.Item(Country)%>.<p>
<%}
else
{%>
    No I don't know anything about <%=Country%>.<p>
<%}%>

But what do you actually know?<br>
- I know that:<br>

<%
for(Num = 0; Num < LastCountry; Num++)
{%>
    The capital of <%=CountryList(Num)%> is
        <%=Capitals.Item(CountryList(Num))%>.<p>
<%}%>

</html>
- - - - -

Men det out-put jeg får er:
- - - - -
The capital of France is Paris
Do we know anything about Denmark?
No I don't know anything about Denmark.

But what do you actually know?
- I know that:
- - - - -

Hvorfor skriver den ikke det ud som for-løkken skulle gøre?
(det skulle ikke være noget med ; efter sætningerne selvom det er god skik :o) )

Kasper
Avatar billede eagleeye Praktikant
03. juni 2002 - 14:19 #1
Prøv at gøre dette:
CountryList = Capitals.Keys()
LastCountry = Capitals.Count -1

Efter du har added til liste:
Capitals.Add("England", "London")
Capitals.Add("USA", "Washington")
Capitals.Add("France", "Paris")
Capitals.Add("Norway", "Oslo")

'INDSÆT HER...
Avatar billede eagleeye Praktikant
03. juni 2002 - 14:20 #2
Du hendter antalet (count) før du putter data ind.
Avatar billede dueholm Praktikant
03. juni 2002 - 15:56 #3
Jeg kan godt se hvad du mener!
Men af en eller anden grund virker det stadig ikke!
Denne gang kører scriptet slet ikke!
Koden ser nu sådan ud:
- - - - -
<%@ LANGUAGE=JScript %>

<html>

<%
var Capitals, CountryList, LastCountry, Num

Capitals = new ActiveXObject("Scripting.Dictionary")

Capitals.Add("England", "London")
Capitals.Add("USA", "Washington")
Capitals.Add("France", "Paris")
Capitals.Add("Norway", "Oslo")

CountryList = Capitals.Keys()
LastCountry = Capitals.Count -1
%>

The capital of France is <%=Capitals.Item("France")%><p>

<%
var Country

Country = "Denmark"
%>

Do we know anything about <%=Country%>?<br>

<%
if(Capitals.Exists(Country))
{%>
    Yes, I know the capital of <%=Country%>.<p>
    It is <%=Capitals.Item(Country)%>.<p>
<%}
else
{%>
    No I don't know anything about <%=Country%>.<p>
<%}%>

But what do you actually know?<br>
- I know that:<br>

<%
for(Num = 0; Num < LastCountry; Num++)
{%>
    The capital of <%=CountryList(Num)%> is
        <%=Capitals.Item(CountryList(Num))%>.<p>
<%}%>

</html>
- - - - -

Nogle nye forslag?

Kasper
Avatar billede dueholm Praktikant
03. juni 2002 - 16:42 #4
Det er nede i linierne:
The capital of <%=CountryList(Num)%> is
        <%=Capitals.Item(CountryList(Num))%>.<p>
at der er et problem!
Jeg får flg fejl:
Microsoft JScript runtime error '800a138a'

Function expected

/test/dictionary.asp, line 46
Avatar billede dueholm Praktikant
26. september 2002 - 10:37 #5
lukket
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
Kurser inden for grundlæggende programmering

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