Buongiorno a tutti, spero di essere chiaro nella spiegazione del mio problema che si verifica solamente su IE, mentre su tutti gli altri browser funziona perfettamente.
Devo dire che ho cercato e ricercato per tre giorni su questo forum argomenti simili ma non ho trovato nulla che mi chiarisse il problema.
Non credo che lo script sia sbagliato eppure non funziona.
Il problema è questo:
Ho una select che viene popolata con dati presi da database che attraverso uno script popola una seconda select e così via. Queste select mi servono per selezionare regione, quindi provincia, quindi città.
Su IE quando seleziono la regione, il debugger di IE mi dice, alla riga 14 dello script che gestisce la prima select:
"estraiprovincia is null or not an object"
Questo è il link della pagina:
http://www.p-mate.it/p-mate/p-mate-trovanegozio.php
(Per chi vuole provare, attualmente ci sono dati solo nella provincia di Milano.)
Questo è il php della select:
e questo è lo script che gestisce la select:Codice PHP:<?php
echo "<form action=\"\">";
echo " <select name=\"regione\" size=1 onchange=\"showProvincia(this.value)\">";
echo " <option value=\"\" selected >Seleziona la Regione...</option>";
$query = DB_Query("SELECT * FROM $table7 WHERE parent =0 ORDER BY name ASC");
while ($result = DB_Get_Results($query))
{
echo "<option value=\"$result[0]\">$result[1]</option>";
}
echo " </form>";
?>
Dov'è che sbaglio? Qualcuno può aiutarmi? Grazie 1000!codice:var estraiprovincia; function showProvincia(strp) { if (parseInt(strp) == "") { document.getElementById("BoxProvincia").innerHTML = ""; } else { var url = "../p-mate/provincia.php?regione="+strp; estraiprovincia = RicavaBrowser(CambioStato); estraiprovincia.open("GET", url, true); estraiprovincia.send(null); } } function CambioStato() { if (estraiprovincia.readyState == 4) { var R = document.getElementById("BoxProvincia"); R.innerHTML = estraiprovincia.responseText; } } function RicavaBrowser(QualeBrowser) { if (navigator.userAgent.indexOf("MSIE") != (-1)) { var Classe = "Msxml2.estraiprovincia"; if (navigator.appVersion.indexOf("MSIE 5.5") != (-1)) { Classe = "Microsoft.estraiprovincia"; } try { estraiprovincia = new ActiveXObject(Classe); estraiprovincia.onreadystatechange = QualeBrowser; return estraiprovincia; } catch(e) { alert("Errore: l'ActiveX non verra' eseguito!"); } } else { estraiprovincia = new XMLHttpRequest(); estraiprovincia.onload = QualeBrowser; estraiprovincia.onerror = QualeBrowser; return estraiprovincia; } }![]()

Rispondi quotando