Dopo Vs. suggerimenti ho cambiato in altro script con DB.
In pratica però sono bloccato sul fatto che ora questo script di default deve prendere i dati dal db e utilizza 3 pagine esterne(come si può notare dal javascript) dove carica la select di riferimento, ora per la regione, tutto ok, mentre per la provincia, comuni e cap non sono come fare, ecco lo script:
codice:
<script type="text/javascript" language="javascript">
var estrai_province;
var regione
function cerca_province()
{
regione=document.form.regione.options[document.form.regione.selectedIndex].value
// branch for native XMLHttpRequest object
if (window.XMLHttpRequest) {
estrai_province= new XMLHttpRequest();
estrai_province.onreadystatechange = ricevi_province;
estrai_province.open("GET", "estrai-province.asp?regione="+regione, true);
estrai_province.send(null);
// branch for IE/Windows ActiveX version
} else if (window.ActiveXObject) {
estrai_province= new ActiveXObject("Microsoft.XMLHTTP");
if (estrai_province) {
estrai_province.onreadystatechange = ricevi_province;
estrai_province.open("GET", "estrai-province.asp?regione="+regione, true);
estrai_province.send();
}
}
}
function ricevi_province() {
var province;
if (estrai_province.readyState == 4) {
province=estrai_province.responseText;
document.getElementById('provincia').innerHTML = province;
}
}
var estrai_comuni;
var provincia
function cerca_comuni()
{
provincia=document.form.provincia.options[document.form.provincia.selectedIndex].value
// branch for native XMLHttpRequest object
if (window.XMLHttpRequest) {
estrai_comuni= new XMLHttpRequest();
estrai_comuni.onreadystatechange = ricevi_comuni;
estrai_comuni.open("GET", "estrai-comuni.asp?provincia="+provincia, true);
estrai_comuni.send(null);
// branch for IE/Windows ActiveX version
} else if (window.ActiveXObject) {
estrai_comuni= new ActiveXObject("Microsoft.XMLHTTP");
if (estrai_comuni) {
estrai_comuni.onreadystatechange = ricevi_comuni;
estrai_comuni.open("GET", "estrai-comuni.asp?provincia="+provincia, true);
estrai_comuni.send();
}
}
}
function ricevi_comuni() {
var comuni;
if (estrai_comuni.readyState == 4) {
comuni=estrai_comuni.responseText;
document.getElementById('comuni').innerHTML = comuni;
}
}
var estrai_cap;
var comune
function cerca_cap()
{
comune=document.form.comune.options[document.form.comune.selectedIndex].value
// branch for native XMLHttpRequest object
if (window.XMLHttpRequest) {
estrai_cap= new XMLHttpRequest();
estrai_cap.onreadystatechange = ricevi_cap;
estrai_cap.open("GET", "estrai-cap.asp?comune="+comune, true);
estrai_cap.send(null);
// branch for IE/Windows ActiveX version
} else if (window.ActiveXObject) {
estrai_cap= new ActiveXObject("Microsoft.XMLHTTP");
if (estrai_cap) {
estrai_cap.onreadystatechange = ricevi_cap;
estrai_cap.open("GET", "estrai-cap.asp?comune="+comune, true);
estrai_cap.send();
}
}
}
function ricevi_cap() {
var cap;
if (estrai_cap.readyState == 4) {
cap=estrai_cap.responseText;
document.getElementById('cap').innerHTML = cap;
}
}
</script>
Che poi richiamo così:
codice:
<% reg = rs.Fields("regione")%>
<select name="regione" id="regione" onChange="cerca_province();">
<option value="0">Seleziona Regione</option>
<%
Set MyConn=Server.CreateObject("ADODB.Connection")
MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("DB/RPC.mdb")
SQL = "Select * From regioni order by regione asc"
Set RS = MyConn.Execute(SQL)
While Not RS.EOF
%>
<option value="<%=rs("id_regione")%>" <%if reg = ""& rs("id_regione") &"" then%> selected="selected"<%end if%>><%=rs("regione")%></option>
<%
RS.MoveNext
Wend
RS.Close
Set RS = Nothing
MyConn.Close
Set MyConn = Nothing
%>
</select>
<td id="provincia" width="159">
</td>
<td id="comuni" width="159">
</td>
<td id="cap" width="159">
</td>
Come dicevo ora vorrei che le select si autoselezionerebbero con i dati
prelevati dal mio db, per la regione ho risolto, mentre per gli altri
non so come fare.
Grazie per l'aiuto.
G.