Avatar billede psyclown Nybegynder
03. november 2002 - 19:27 Der er 5 kommentarer og
1 løsning

et mindre problem

Jeg har lavet det her java script:

<script language="Javascript">
function CountrySelect()
{
  if (document.form.Country.options[document.form.Country.selectedIndex].value == "Denmark")
    {document.form.City.disabled = false;}
  else
    {document.form.City.disabled = true;}
}
</script>

også har jeg de 2 dropdown boxe som jeg skal bruge, den ene med lande og den anden med byer i Danmark:

Response.Write "<form name=""form"" action="""" method=""POST"">"& vbCrLf
Response.Write "<select class=""txtfield"" name=""Country"" size=""1"" OnChange=""CountrySelect();"">"& vbCrLf
Response.Write "<option value="""" selected>Country</option>"& vbCrLf
Response.Write "<option value=""-"">----------------------</option>"& vbCrLf
                                    Set conntemp = Server.CreateObject("ADoDB.Connection")
                                    conntemp.open DSN
                                    SQL = "SELECT DISTINCT COUNTRIES FROM COUNTRIES ORDER BY COUNTRIES"
                                    Set rsCountry = conntemp.execute(SQL)
                                    Do While Not rsCountry.EOF
Response.Write "<option value="""& rsCountry("COUNTRIES") &""""
                                    If blah = rsCountry("COUNTRIES") Then
Response.Write "selected"
                                    End If
Response.Write ">"& rsCountry("COUNTRIES") &"</option>"& vbCrLf
                                    rsCountry.MoveNext
                                    Loop
                                    rsCountry.close
Response.Write "</select>"& vbCrLf
Response.Write "<select class=""txtfield"" name=""City"" size=""1"">"& vbCrLf
Response.Write "<option value="""" selected>City</option>"& vbCrLf
Response.Write "<option value=""-"">----------------------</option>"& vbCrLf
                                    Set conntemp = Server.CreateObject("ADoDB.Connection")
                                    conntemp.open DSN
                                    SQL = "SELECT DISTINCT CITIES FROM CITIES ORDER BY CITIES"
                                    Set rsCity = conntemp.execute(SQL)
                                    Do While Not rsCity.EOF
Response.Write "<option value="""& rsCity("CITIES") &""""
                                    If blah = rsCity("CITIES") Then
Response.Write "selected"
                                    End If
Response.Write ">"& rsCity("CITIES") &"</option>"& vbCrLf
                                    rsCity.MoveNext
                                    Loop
                                    rsCity.close
Response.Write "</select>"& vbCrLf
Response.Write "</form>"& vbCrLf

Scriptet kan også ses her: http://212.242.188.97/limitless/test.asp

Det virker sådan at når man vælger Danmark i dropdown boxen med lande, så bliver boxen med danske byer "låst op"
Det jeg gerne vil og har prøvet at få fixet, er at når man har valgt "Danmark" i boxen med lande og man har valgt en by, så skal det være sådan at hvis man vælger et andet land, så skal den ikke bare "låse" boxen med byer som den gør nu, den skal også gå til det første element i by boxen, altså den skal selected "City".

Håber at i forstår hvad jeg mener ellers kan i jo bare spørge.

På forhånd tak!
Avatar billede psyclown Nybegynder
03. november 2002 - 19:29 #1
Det er vidst lidt svært at finde rundt i den ASP kode, håber det her hjælper lidt:

Response.Write "<form name=""form"" action="""" method=""POST"">"& vbCrLf
Response.Write "<select class=""txtfield"" name=""Country"" size=""1"" OnChange=""CountrySelect();"">"& vbCrLf
Response.Write "<option value="""" selected>Country</option>"& vbCrLf
Response.Write "<option value=""-"">----------------------</option>"& vbCrLf
Set conntemp = Server.CreateObject("ADoDB.Connection")
conntemp.open DSN
SQL = "SELECT DISTINCT COUNTRIES FROM COUNTRIES ORDER BY COUNTRIES"
Set rsCountry = conntemp.execute(SQL)
Do While Not rsCountry.EOF
Response.Write "<option value="""& rsCountry("COUNTRIES") &""""
If blah = rsCountry("COUNTRIES") Then
Response.Write "selected"
End If
Response.Write ">"& rsCountry("COUNTRIES") &"</option>"& vbCrLf
rsCountry.MoveNext
Loop
rsCountry.close
Response.Write "</select>"& vbCrLf

Response.Write "<select class=""txtfield"" name=""City"" size=""1"">"& vbCrLf
Response.Write "<option value="""" selected>City</option>"& vbCrLf
Response.Write "<option value=""-"">----------------------</option>"& vbCrLf
Set conntemp = Server.CreateObject("ADoDB.Connection")
conntemp.open DSN
SQL = "SELECT DISTINCT CITIES FROM CITIES ORDER BY CITIES"
Set rsCity = conntemp.execute(SQL)
Do While Not rsCity.EOF
Response.Write "<option value="""& rsCity("CITIES") &""""
If blah = rsCity("CITIES") Then
Response.Write "selected"
End If
Response.Write ">"& rsCity("CITIES") &"</option>"& vbCrLf
rsCity.MoveNext
Loop
rsCity.close
Response.Write "</select>"& vbCrLf
Response.Write "</form>"& vbCrLf
Avatar billede eagleeye Praktikant
03. november 2002 - 19:33 #2
Kan man ikke udvide scritpet til:


<script language="Javascript">
function CountrySelect()
{
  if (document.form.Country.options[document.form.Country.selectedIndex].value == "Denmark")
    {document.form.City.disabled = false;}
  else
    {
      document.form.City.disabled = true;
      document.form.City.selectedIndex = 1; // ELLER 0 for den første
    }
}
</script>
Avatar billede grunken Nybegynder
03. november 2002 - 19:36 #3
<script language="Javascript">
function CountrySelect()
{
  if (document.form.Country.options[document.form.Country.selectedIndex].value == "Denmark")
    {document.form.City.disabled = true;}
  else
    {document.form.City.value = 'City;}

}
</script>
Avatar billede grunken Nybegynder
03. november 2002 - 19:37 #4
LOOL

<script language="Javascript">
function CountrySelect()
{
  if (document.form.Country.options[document.form.Country.selectedIndex].value == "Denmark")
    {document.form.City.disabled = false;}
  else
    {document.form.City.value = 'City;}

}
</script>
Avatar billede psyclown Nybegynder
03. november 2002 - 19:40 #5
det er utroligt, hvor let du kan gøre alt ting eagleeye :D
med det jeg havde prøvet, manglede jeg bare lige det sidste "= 1;"

du kan måske lige hurtigt hjælpe, med en ting mere...det skal jo være meningen at by boxen skal være låst fra starten, men det er den ikke.

jeg har prøvet at sætte document.form.City.disabled = true; øverst i functionen, men det virker ikke, hva skal jeg så gøre ?
Avatar billede Slettet bruger
03. november 2002 - 21:04 #6
Så skriver du bare disabled i select-tagget:

Response.Write "<select class=""txtfield"" name=""Country"" size=""1"" OnChange=""CountrySelect();"" disabled>"& vbCrLf
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