Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    69

    Select Dinamica Con Completamento Textbox

    Salve a tutti, ho provato a girare nel form, ma ci sto diventando pazzo:
    io ho un modulo al cui interno ci sono 5 campi
    combobox: nominativo
    textbox: indirizzo
    textbox: cap
    textbox: citta
    textbox: pv

    vorrei fare una cosa semplice a dirsi ma difficile a farsi per me che mi sto approcciando ora ad ASP (premetto che in access e Vb la cosa l'avrei risolta da solo!)
    ... comuque
    ho una quesy (utente) che popolo con il classico parametro id passato dalla pagina precedente.
    Ho impostato il valore nominativo sulla combobox e praticamente vorrei che una volta selezionato il nome del mio utente, mi si compilassero in automatico gli altri campi, in modo da velocizzare la compilazione del mio modulo.

    Come posso fare in termini semplici?
    Grazie a chi è così gentile e paziente da aiutarmi.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Leggi qui
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    69
    Ho letto, ma non riesco a metterlo in pratica...

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da webmamo
    Ho letto, ma non riesco a metterlo in pratica...
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Consideralo solo un esempio didattico...


    codice:
    <html><head>
    <script>
    function completa(chi) {
    	getText('dati_utente.asp?idUtente='+chi);
    	if (xmlHttpTesto!="") {
    		opzioni = xmlHttpTesto.split("|")
    		document.tuaForm.indirizzo.value = opzioni[0];
    		document.tuaForm.cap.value = opzioni[1];
    		document.tuaForm.citta.value = opzioni[2];
    		document.tuaForm.pv.value = opzioni[3];
    	}
    }
    
    var xmlHttpTesto = "";
    
    function createXMLHttp() {
    	var xmlhttp ;
    	try {
    		xmlhttp = new XMLHttpRequest(); // Gecko (Firefox, Moz), KHTML (Konqueror, Safari), Opera, Internet Explorer 7
    	} catch (e) {
    		var MSXML_XMLHTTP_PROGIDS = new Array(
    			'MSXML2.XMLHTTP.5.0',  
    			'MSXML2.XMLHTTP.4.0',
    			'MSXML2.XMLHTTP.3.0',
    			'MSXML2.XMLHTTP',	  // Internet Explorer 6
    			'Microsoft.XMLHTTP'   // Internet Explorer 4,5
    		);
    		var success = false;
    		for (var i=0;i < MSXML_XMLHTTP_PROGIDS.length && !success; i++) {
    			try {
    				xmlhttp = new  ActiveXObject(MSXML_XMLHTTP_PROGIDS[i]);
    				success = true;
    			} catch (e) {}
    		}
    		if ( !success ) {
    			alert('Cant create XMLHttpRequest - not supported');
    		}
    	}
    	return xmlhttp;
    }
    function getText(qry) {
    	xmlHttpTesto="";
    	var xmlHttpObj = null;
    	xmlHttpObj=createXMLHttp();
    	xmlHttpObj.open('get', qry, true); 
    	xmlHttpObj.onreadystatechange = function() {
    		alert(xmlHttpObj.readyState)
    			if (xmlHttpObj.readyState == 4) {
    			if (xmlHttpObj.status==200 || xmlHttpObj.status==304) {
    				xmlHttpTesto = xmlHttpObj.responseText;
    			} else { alert("connessione perduta - ricaricare la pagina"); return; }
    		}
    	}		  
    	xmlHttpObj.send(null); 
    	delete xmlHttpObj;
    }
    </script>
    </head><body>
    <form name="tuaForm">
    <select name="idUtente" onchange="completa(this.options[this.selectedIndex].value)">
    <%
    ' qui apri la connessione al tuo db
    Set rs = tuaConn.execute("select * from utenti")
    Do Until rs.eof
    	response.write "<option value="""&rs("idUtente")&""">"&rs("numeUtente")&"</option>"
    	rs.movenext
    Loop
    rs.close
    ' qui chiudi la connessione al db
    %>
    </select>
    <input type="text" name="indirizzo">
    <input type="text" name="cap">
    <input type="text" name="citta">
    <input type="text" name="pv">
    </form>
    </body></html>

    codice:
    <%
    ' qui apri la connessione al tuo db
    risposta = "|||" ' vuota se errore
    Set rs = tuaConn.execute("select * from utenti where idUtente="&request("idUtente"))
    If Not rs.eof
    	risposta = rs("indirizzo")&"|"&rs("cap")&"|"&rs("citta")&"|"&rs("pv")
    End if
    rs.close
    ' qui chiudi la connessione al db
    response.write risposta
    %>
    Come puoi vedere, di ASP ce ne sta proprio pochino.... a riprova del fatto che per realizzare queste cose occorre avere competenze di altre tecnologie.

    Non l'ho provato, avendolo fatto al volo con un po' di copia/incolla, mettici un pochino del tuo impegno per testarlo e adattarlo alle tue esigenze.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    69
    grazie.
    Ora lo studio per bene, lo adatto, lo testo e ti faccio sapere...
    intanto grazie
    ... spero questa estate di avere più tempo per studiare meglio le basi.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.