Buonasera a tutti.
Ho trovato con la ricerca sul forum un interessante script che utilizza il metodo OnChange per il popolamento di select dinamiche.
Riesco a farlo funzionare, ma ho un problema quando devo splittare il valore restituito dalla prima select, perchè il codice restituisce:Ecco il codice:Tipo di errore:
Errore di run-time di Microsoft VBScript (0x800A000D)
Tipo non corrispondenteL'errore è sulla riga rossa.codice:<% strSql = "SELECT * FROM SCHEDA_IMPIANTO ORDER BY NOMEFORNITORE ASC" Set objRs = Server.CreateObject("ADODB.Recordset") objRs.Open strSql, objCONN, 3, 3 %> <select size="1" name="NOMEFORNITORE" onChange="window.document.location='forminsdescrmercefornitore.asp?NOMEFORNITORE='+this.options[this.selectedIndex].value+'';"> <% NOMEFORNITORESEL = request("NOMEFORNITORE") %> <option value="<%=NOMEFORNITORESEL%>"><%=NOMEFORNITORESEL%></option> <% If Not objRs.EOF Then Do While Not objRs.EOF %> <option value= "<% = Trim(objRs("ID")) %>-<% = Trim(objRs("NOMEFORNITORE")) %>"><% = Trim(objRs("ID")) %>-<% = Trim(objRs("NOMEFORNITORE")) %></option> <% objRs.MoveNext Loop End If objRs.Close %> </select> <% NOMEFORNITORE = request("NOMEFORNITORE") NOMEFORNITORE = Split(NOMEFORNITORE , "-") NOMEFORNITORE1 = NOMEFORNITORE (0) NOMEFORNITORE2 = NOMEFORNITORE (1) strSql = "SELECT * FROM SCHEDA_IMPIANTO WHERE NOMEFORNITORE = '"&NOMEFORNITORE&"' ORDER BY NOMEFORNITORE ASC" objRs.Open strSql, OBJCONN, 3, 3 %> <select name="CodiceProdottoFornitore" onChange="window.document.location='forminsdescrmercefornitore.asp?CODICEPRODOTTOFORNITORE='+this.options[this.selectedIndex].value+'&NOMEFORNITORE=<%=NOMEFORNITORE%>';"> <% CodiceProdottoFornitoresel = request("CodiceProdottoFornitore") %> <option value="<%=CodiceProdottoFornitoresel%>"><%=CodiceProdottoFornitoresel%></option> <% If Not objRs.EOF Then Do While Not objRs.EOF %> <option value= "<% = objRs("CodiceProdottoFornitore") %>"><% = objRs("CodiceProdottoFornitore") %></option> <% objRs.MoveNext Loop End If objRs.Close %> </select>
Grazie per eventuali suggerimenti.

Rispondi quotando