jeg kan ikke få et asp-dokument til at virke. Jeg fylder en komboboks med data fra en databasen. Jeg vil gerne have noget til at ske, når jeg vælger et element fra komboboksen. Jeg kan af en eller anden årsag ikke få kaldet igennem til funktionen/sub'en. Jeg håbede jeg kunne uploade en fil, men her er selve kildekoden:
<html><title>TEST</title><head> <% sub vbproc(num1,num2) response.write(num1*num2) end sub
function Test() response.write "alert('TEST')" end function
IF session("Login") = "JA" then dim MyConn, SQL_query, RS, MyIden, AccConn, AccRS
set AccConn = Server.CreateObject("ADODB.Connection")
Set MyConn = Server.CreateObject("ADODB.Connection") MyConn.Open "PROVIDER=SQLOLEDB;DATA SOURCE=xxxx;UID=xxxx;PWD=xxxx;DATABASE=xxxx"
onchange er en javascript-event, altså noget, der sker på klienten, mens vbproc er en server funktion - så du er nødt til at lave vbproc om til en javascript-funktion eller, hvis du har behov for at få serverfunktionalitet ind over, en ajax-funktion.
Hmm, måske jeg er på for dybt vand... I bund og grund går mit problem ud på, at jeg har 2 combobokse, som egentlig repræsenterer en "1-til-mange" relation i en database. Når brugeren vælger noget fra combobox1, skal valget bruges til udvælgelse af, hvad der skal vises i combobox2. Jeg havde håbet, at jeg ved at kalde en function, kunne sætte den rette sql-streng op. Hvis der lige er en nem løsning hertil, vil jeg da være taknemmelig - ellers må jeg blot lukke spørgsmålet igen.
Ja, det var faktisk også sådan jeg begyndte, men det generede mig bare, at jeg efter at have postet, blev valgte i boksen sat tilbage til udgangspunktet.
Med javascript kan du lave det således. Se eksempel nedenfor. Hvis du skal hente option valg fra en database kan du sætte to løkker til at genererer javascriptkoden som klienten så loader. (Har testet koden af. Beklager det er PHP kode. Håber stadig mit eksempel kan hjælpe.)
<form name="MyFormComboboxEksempel" enctype="multipart/form-data" method="post" action=""> <select id="ComboBox1" name="ComboBox1" onchange="setOptions(document.MyFormComboboxEksempel.ComboBox1.options[document.MyFormComboboxEksempel.ComboBox1.selectedIndex].value);"> <option value="">Vælg</option> <option value="Personbiler">Personbiler</option> <?php ////////////////////////////////////// // Ny option i combobox1 $JavascriptInput = "$JavascriptInput if(chosen == 'Personbiler'){ selbox.options[selbox.options.length] = new Option('Vælg',''); "; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Personbiler 1','Personbiler 1');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Personbiler 2','Personbiler 2');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Personbiler 3','Personbiler 3');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Personbiler 4','Personbiler 4');"; $JavascriptInput = "$JavascriptInput }"; ////////////////////////////////////// ////////////////////////////////////// // Ny option i combobox1 ?> <option value="Lastbiler">Lastbiler</option> <?php $JavascriptInput = "$JavascriptInput if(chosen == 'Lastbiler'){ selbox.options[selbox.options.length] = new Option('Vælg',''); "; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Lastbil 1','Lastbil 1');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Lastbil 2','Lastbil 2');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Lastbil 3','Lastbil 3');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Lastbil 4','Lastbil 4');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Lastbil 5','Lastbil 5');"; $JavascriptInput = "$JavascriptInput selbox.options[selbox.options.length] = new Option('Lastbil 6','Lastbil 6');"; $JavascriptInput = "$JavascriptInput }"; ////////////////////////////////////// ?> </select> <script type="text/javascript"> function setOptions(chosen) { var selbox = document.MyFormComboboxEksempel.ComboBox2;
Du skal selv sørge for at huske state - dvs fx sætte value på input-felter og selected på options.
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.