Jeg er ved at opbygge en side i ASP som skal sende oplysninger til et firma via mail. De oplysninger der skal sendes udfyldes i en form, og sendes herefter. Jeg har flere steder hvor jeg slår op i en database og det virker fint. Problemet er nu at jeg har 2 comboboxe der skal være afhængige af hinanden, så når jeg har foretaget et valg i den ene skal den anden opdatere sig alt efter hvad der er valgt. Selve onChange virker fint nok nu, men når jeg bruger denne metode så resetter den resten af formen, hvad kan jeg gøre for at få gemt mine indtastninger?
Det lyder som om der enten bliver kaldt en funktion på formularen som resetter felterne, eller at formularen bliver sendt til serveren... men det vil nok fremgå mere tydeligt, hvis du viser formularen.
Her er kode, det er lidt et mix af noget jeg har fundet på netcoders og lidt eget lavet. I dette tilfælde bliver textbox test1 ikke gemt når man laver onchange på combobox 1. <%@ Language=VBScript %> <!--#include file="db.asp"--> <% Level = Request.QueryString("Level") 'Get level, control how many dropdown boxes we should make TmpModel = Request.QueryString("Model") 'Shows the selected value in the dropdown box TmpController = Request.QueryString("Controller") 'Shows the selected value in the dropdown box TmpOS = Request.QueryString("OS") 'Shows the selected value in the dropdown box
'Takes care of the first time your running this file and set the level to 1 to avoid error If Level = "" Then Level = "1" End If
<script language="JavaScript"> <!-- function jumppage(sel) {
var i = sel.selectedIndex if (i!=0) { top.location.href = sel.options[i].value }
} // --> </script>
Jeg skal bare lige være helt sikker på hvad det er du vil og hvordan det kan løses mest hensigtsmæssigt. Umiddelbart synes jeg der er behov for en omstrukturering af din formularer, men kan ikke helt gennemskue om det er en acceptabel løsning for dig...
Det er ikke helt denne kode jeg benytter på den rigtige hjemmeside, men det skal fungere på samme måde. Det jeg skal er, når jeg i combobox 1 vælge A, så skal combobox 2 vises hvad der i databasen står med A som gruppe. Det skal gøres uden at andre tekstfelter bliver resat.
Som jeg ser det, har du (mindst 2) muligheder for at løse dette.
1. Ændre det hele til en stor formular og så lave et postback (submit) til serveren hvor du sørger for at flytte værdierne fra request.form over i tilsvarende felter i HTML-koden og opdatere combobox 2 med værdierne som svarer til valget i combobox 1.
2. Sende data med ud til klienten (f.eks. i form af javascript arrays), som sætter klienten i stand til opdatere din combobox 2 alt efter hvad du vælger i combobox 1.
Hvilken af de 2 løsningsmodeller du vælger, afhænger bla. af hvormeget data du har til combobox 2 (til alle scenarier). Hvis der er meget data, vil jeg nok foretrække et serverpostback, men det afhænger igen af hvor stor belastning der er på serveren osv. osv.
Jeg vil tro løsning 2 er den bedste, men jeg ved intet om java så den er måske for svær for mig.
Synes godt om
Ny brugerNybegynder
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.