Ciao a tutti.
Con google ho trovato questo interessante script "select dinamiche" misto ASP + Javascript.
In pratica la seconda select si popola a secondo del valore selezionato nella prima.
Se volessi aggiungere altre select e cioè una terza che si popola a secondo del valore selezionato nella seconda, una quarta che si popola a secondo del valore selezionato nella terza e via dicendo.... come devo modificare lo script ?
Quello che sono riuscito ad ottenere è il popolamento dinamico della seconda, terza e quarta select secondo del valore selezionato nella prima... ma non riesco a dare sequenza al popolamento.
Sapete aiutarmi?
codice:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Dependent Dropdownlists</title> <% myConnectString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("../mdb-database/db.mdb") %> <script language="javascript"> function listboxchange(p_index) { <% mySQL = "SELECT * FROM tbl_test Order By tipologia asc" Set myConnection = CreateObject("ADODB.Connection") myConnection.open myConnectString Set myRS = myConnection.Execute(mySQL) %> switch (p_index) { <% Do Until myRS.eof StartTipologia = myRS("tipologia") StartScheda = myRS("scheda") StartImp = myRS("imp") Cnt = 0 %> case "<%=StartTipologia%>" : <% do until myrs.eof or Starttipologia <> myRS("tipologia") %> document.myform.listbox2.options[<%=cnt%>]=new Option("<%=myRs("scheda")%>","<%=myRs("scheda")%>"); case "<%=StartScheda%>" : document.myform.listbox3.options[<%=cnt%>]=new Option("<%=myRs("imp")%>","<%=myRs("imp")%>"); case "<%=StartImp%>" : document.myform.listbox4.options[<%=cnt%>]=new Option("<%=myRs("sottoelemento")%>","<%=myRs("sottoelemento")%>"); <% Cnt = Cnt + 1 myrs.movenext if myrs.eof then exit do Loop %> break; <% Loop myRS.close Set myRS = nothing %> } return true; } </script> <% mySQL = "SELECT DISTINCT tipologia FROM tbl_test Order By tipologia asc" Set myConnection = CreateObject("ADODB.Connection") myConnection.open myConnectString Set myRS = myConnection.Execute(mySQL) do until myrs.eof ListBox1 = ListBox1 & "<option value=""" & myRs("tipologia") & """>" & myRs("tipologia") & "</option>" myRs.movenext loop myRS.close Set myRS = nothing myConnection.close Set myConnection = nothing %> </head> <body> <form name="myform" action="" method="get"> <select name="listbox1" id="listbox1" onchange="javascript: listboxchange(this.options[this.selectedIndex].value);"> <option value="">Seleziona</option> <%=ListBox1%> </select> <select name="listbox2" id="listbox2" onchange="javascript: listboxchange(this.options[this.selectedIndex].value);"> <option value="">Seleziona</option> <%=ListBox2%> </select> <select name="listbox3" id="listbox3" onchange="javascript: listboxchange(this.options[this.selectedIndex].value);"> <option value="">Seleziona</option> <%=ListBox3%> </select> <select name="listbox4" id="listbox4" onchange="javascript: listboxchange(this.options[this.selectedIndex].value);"> <option value="">Seleziona</option> </select> </form> </body> </html>

Rispondi quotando