Buongiorno a tutti, ho preso spunto dal seguente link l'esempio per creare un form con la scelta della provincia citta e cap... funziona perfettamente, pero solo con firefox e explorer,![]()
con gli altri browser non funziona, secondo me perche nella pagina italia.js ce il seguente codice
qlcn può aiutarmi???codice:function RicavaBrowser(QualeBrowser) { if (navigator.userAgent.indexOf("MSIE") != (-1)) { var Classe = "Msxml2.XMLHTTP"; if (navigator.appVersion.indexOf("MSIE 5.5") != (-1)); { Classe = "Microsoft.XMLHTTP"; } try { OggettoXMLHTTP = new ActiveXObject(Classe); OggettoXMLHTTP.onreadystatechange = QualeBrowser; return OggettoXMLHTTP; } catch(e) { alert("Errore: l'ActiveX non verrà eseguito!"); } } else if (navigator.userAgent.indexOf("Mozilla") != (-1)) { OggettoXMLHTTP = new XMLHttpRequest(); OggettoXMLHTTP.onload = QualeBrowser; OggettoXMLHTTP.onerror = QualeBrowser; return OggettoXMLHTTP; } else { alert("L'esempio non funziona con altri browser!"); } }
vi posto la pagina principale form.asp dove cè la scelta della provincia
questa è la pagina italia.js dove ce il codice javacodice:<%@LANGUAGE = VBScript%> <html> <head> <title>Selezione di Regioni e Province con ASP ed AJAX</title> <script type="text/javascript" src="italia.js"></script> </head> <body> <form name="italia"> <select name="prov" onChange="citta(this.value)"> <% percorso="Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("public/mdb-database/db.mdb") & ";" Set objConn = Server.CreateObject("ADODB.Connection") objConn.Open(percorso) Set objRs = Server.CreateObject("ADODB.Recordset") query="SELECT DISTINCT CITTA.prov FROM CITTA ORDER BY CITTA.prov;" set objRs = objConn.Execute(query) If objRs.EOF Then Response.Write "Selezionare una regione valida!" else %> <option value="0"></option> <% While objRs.EOF = False %> <option value="<%=objRs("prov")%>"><%=objRs("prov")%></option> <% objRs.MoveNext Wend %> </select> <% end if objRs.Close Set objRs = Nothing objConn.Close Set objConn = Nothing %> <div id="risultati1"></div> <div id="risultati2"></div> </form> </body> </html>
codice:var XMLHTTP; function citta(ID) { if (parseInt(ID) == 0) { document.getElementById("risultati1").innerHTML = ""; } else { var url = "citta.asp?id=" + ID; XMLHTTP = RicavaBrowser(CambioStato1); XMLHTTP.open("GET", url, true); XMLHTTP.send(null); } } function cap(ID) { if (parseInt(ID) == 0) { document.getElementById("risultati2").innerHTML = ""; } else { var url = "cap.asp?id=" + ID; XMLHTTP = RicavaBrowser(CambioStato2); XMLHTTP.open("GET", url, true); XMLHTTP.send(null); } } function CambioStato1() { if (XMLHTTP.readyState == 4) { var R = document.getElementById("risultati1"); R.innerHTML = XMLHTTP.responseText; } } function CambioStato2() { if (XMLHTTP.readyState == 4) { var E = document.getElementById("risultati2"); E.innerHTML = XMLHTTP.responseText; } } function RicavaBrowser(QualeBrowser) { if (navigator.userAgent.indexOf("MSIE") != (-1)) { var Classe = "Msxml2.XMLHTTP"; if (navigator.appVersion.indexOf("MSIE 5.5") != (-1)); { Classe = "Microsoft.XMLHTTP"; } try { OggettoXMLHTTP = new ActiveXObject(Classe); OggettoXMLHTTP.onreadystatechange = QualeBrowser; return OggettoXMLHTTP; } catch(e) { alert("Errore: l'ActiveX non verrà eseguito!"); } } else if (navigator.userAgent.indexOf("Mozilla") != (-1)) { OggettoXMLHTTP = new XMLHttpRequest(); OggettoXMLHTTP.onload = QualeBrowser; OggettoXMLHTTP.onerror = QualeBrowser; return OggettoXMLHTTP; } else { alert("L'esempio non funziona con altri browser!"); } }
la pagina citta.asp che seleziona le citta della provincia scelta
e la pagina cap che trova il cap della citta selezionatacodice:var XMLHTTP; function citta(ID) { if (parseInt(ID) == 0) { document.getElementById("risultati1").innerHTML = ""; } else { var url = "citta.asp?id=" + ID; XMLHTTP = RicavaBrowser(CambioStato1); XMLHTTP.open("GET", url, true); XMLHTTP.send(null); } } function cap(ID) { if (parseInt(ID) == 0) { document.getElementById("risultati2").innerHTML = ""; } else { var url = "cap.asp?id=" + ID; XMLHTTP = RicavaBrowser(CambioStato2); XMLHTTP.open("GET", url, true); XMLHTTP.send(null); } } function CambioStato1() { if (XMLHTTP.readyState == 4) { var R = document.getElementById("risultati1"); R.innerHTML = XMLHTTP.responseText; } } function CambioStato2() { if (XMLHTTP.readyState == 4) { var E = document.getElementById("risultati2"); E.innerHTML = XMLHTTP.responseText; } } function RicavaBrowser(QualeBrowser) { if (navigator.userAgent.indexOf("MSIE") != (-1)) { var Classe = "Msxml2.XMLHTTP"; if (navigator.appVersion.indexOf("MSIE 5.5") != (-1)); { Classe = "Microsoft.XMLHTTP"; } try { OggettoXMLHTTP = new ActiveXObject(Classe); OggettoXMLHTTP.onreadystatechange = QualeBrowser; return OggettoXMLHTTP; } catch(e) { alert("Errore: l'ActiveX non verrà eseguito!"); } } else if (navigator.userAgent.indexOf("Mozilla") != (-1)) { OggettoXMLHTTP = new XMLHttpRequest(); OggettoXMLHTTP.onload = QualeBrowser; OggettoXMLHTTP.onerror = QualeBrowser; return OggettoXMLHTTP; } else { alert("L'esempio non funziona con altri browser!"); } }
Grazie!codice:<%@LANGUAGE = VBScript%> <% Dim id id = Request.QueryString("id") percorso="Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("public/mdb-database/db.mdb") & ";" Set objConn = Server.CreateObject("ADODB.Connection") objConn.Open(percorso) Set objRs = Server.CreateObject("ADODB.Recordset") query="SELECT CITTA.cap FROM CITTA WHERE citta='" & id & "'" set objRs = objConn.Execute(query) If objRs.EOF Then Response.Write "Selezionare una regione valida!" else %> <% While objRs.EOF = False %> <input type="text" name="cap" value="<%=objRs("cap")%>" > <% objRs.MoveNext Wend end if objRs.Close Set objRs = Nothing objConn.Close Set objConn = Nothing %>
![]()

Rispondi quotando