Questa procedura ASP permette di creare una lista dinamica del tipo "SELECT", direttamente collegata al database.
Utilizzando una serie di parametri riusciamo a personalizzarla a nostro piacimento.
QUERY: indica la query di selezione, ad esempio "SELECT * FROM TAB_INDIRIZZI"
VALUE: rappresenta il valore delle singole voci della lista (OPTION VALUE="...")
ELEMENTO: il testo che viene visualizzato nelle singole opzioni
NOME: il nome della lista
MULTIPLA: se nullo sarà normale, altrimenti inserendo "multiple" verrà abilitata la lista multipla
ALTEZZA: quante righe della lista visualizzare
COD: indica di selezionare la voce che corrisponde a quel codice (VALUE)
VOCE_SELEZIONE: per aggiungere una voce iniziale che descrive le funzioni della lista (per es. "--Selezionare indirizzo")
Ecco un esempio di chiamata alla nostra procedura:
<% lista("SELECT * FROM TAB_INDIRIZZI","id_settore","nome","lista_indirizzi","","1",1,"-Seleziona la persona") sub lista(QUERY,VALUE,ELEMENTO,NOME,MULTIPLA,ALTEZZA,COD,VOCE_SELEZIONE) Set RS1 = Conn.Execute(QUERY) if RS1.EOF=false then response.write("<select size='" & ALTEZZA & "' name=" & NOME & " onChange='selezione(this.selectedIndex,this.options[this.selectedIndex].value,this.options[this.selectedIndex].text,this.name)'" & MULTIPLA & ">") if VOCE_SELEZIONE<>"" then response.write("<option value='NULL'>" & VOCE_SELEZIONE & "</option>") Do While Not RS1.EOF IF RS1(VALUE) = Clng(COD) THEN response.write("<option value='" & RS1(VALUE) & "' selected> " & RS1(ELEMENTO) & " </option>") ELSE response.write("<option value='" & RS1(VALUE) & "' > "& RS1(ELEMENTO) & " </option>") END IF RS1.MoveNext() Loop response.write("</select>") else response.write("NON PRESENTE") end if end sub %> <SCRIPT language="javascript"> [code lang="html"]<!-- function selezione(I,V,T,NOME) { alert("l'indice è: " + I + ", il valore è: " + V + ", il testo è: " + T + ", il nome è: " + NOME) //Codice di controllo } //--> </SCRIPT>
Non è stata inserito nessun riferimento alla connessione del database, che rimane da aggiungere, utilizzando l'oggetto Conn come riferimento.
Si veda per maggiori informazioni
https://www.aspitalia.com/articoli/db/
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.