Ragazzi mi serve una mano ...
Praticamente ho un sito in php e mysql nel quale uso ajax per diverse funzioni, ad esempio per il login ... che funziona perfettamente ...
Il problema invece sorge con Internet Explorer 8 (non ho provato con altre versioni ancora), vi spiego:
uso un db anche per avere un elenco completo di province, comuni e cap d'Italia ... e nel form di registrazione ho inserito 2 select vuoti, uno per le province, ed uno per i comuni.
Quando si fa click sul collegamento "registrazione" nella pagina, tramite jQuery visualizzo il form di registrazione, e subito dopo tramite ajax riempio i campi del select sulle province ... questo select ad ogni scelta di una provincia diversa mi cambia il secondo select, dei comuni.
Ora, funziona tutto su ogni browser ... apparte IE ... e non sto veramente riuscendo a capire il perchè ... HELP !!!
Questa è la funzione per l'oggetto xml http
Questo è il codice che richiama la funzione per riempire il selectCodice PHP:function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
http = new ActiveXObject("Msxml2.XMLHTTP");
if (!http){
http = new ActiveXObject("Microsoft.XMLHTTP");
return http;
}
return http;
}
return null
}
Codice PHP:function vis_form_registrazione()
{
$("#conferma").slideUp("slow", function(){$("#form_registrazione").slideDown("slow"),sel_province();});
}
Questo è il codice che manda in risposta la pagina phpCodice PHP:function sel_province() {
xmlhttp = GetXmlHttpObject();
if (xmlhttp == null) {
alert ("Il tuo browser non supporta AJAX");
return;
}
var url="core/sel_prov.php";
xmlhttp.onreadystatechange=agg_province;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
function agg_province() {
if (xmlhttp.readyState == 4)
{
document.getElementById("prov").innerHTML = xmlhttp.responseText;
}
}
Codice PHP:echo "<option value=\"\"></option>";
while ($row = mysql_fetch_assoc($results)) {
echo "<option value=\"".$row['sigla']."\">".$row['provincia']."</option>";
}

Rispondi quotando