Ciao a tutti,
è un giorno che sto dietro a questo problema.
Sto facendo un sito per un agenzia immobiliare e ha necessità di un form.
Ho preso da Internet un codice già pronto per Chronoform e creare i 3 campi regione, provincia e comuni annidati e usa Ajax.
Solo che quando vado a compilare la prima dropdown firebug mi dice che non trova la funzione New Ajax().
Mi manca qualche plug in per abilitazione di Ajax??
Vi posto il codice in modo da vedere se c'è qualcosa che non va!!!
Grazie mille
<script type="text/javascript">
var id_select_to_write = "";
function PopolaProvince() {
if (document.getElementById("select_regioni").value == "00"){
alert ("Attenzione: Devi selezionare una regione.")
SvuotaSelect('select_comuni');
SvuotaSelect('select_province');
return;
}
document.getElementById("attesa").innerHTML = ' Attendere....';
CosaFare = "PopolaProvince";
SvuotaSelect('select_comuni');
SvuotaSelect('select_province');
id_select_to_write = "select_province";
var id = document.getElementById("select_regioni").value;
var url = "index2.php?option=com_chronocontact&chronoformname=form_ajax&Funzione="+CosaFare+"&id="+id;
new Ajax(url, {
method: 'get',
onComplete: parseResult
}).request();
}
function PopolaComuni() {
document.getElementById("attesa").innerHTML = ' Attendere....';
CosaFare = "PopolaComuni";
id_select_to_write = "select_comuni";
var id = document.getElementById("select_province").value;
var url = "index2.php?option=com_chronocontact&chronoformname=form_ajax&Funzione="+CosaFare+"&id="+id;
new Ajax(url, {
method: 'get',
onComplete: parseResult
}).request();
}
function parseResult(request)
{
var msg = request.split('##@##');
document.getElementById("attesa").innerHTML = "";
document.getElementById(id_select_to_write).innerHTML=msg[1];
if(document.all)
{
ie = "<option>opzione</option>" + msg[1];
document.getElementById(id_select_to_write).innerHTML=ie;
document.getElementById(id_select_to_write).outerHTML = document.getElementById(id_select_to_write).outerHTML;
}else{
document.getElementById(id_select_to_write).innerHTML=msg[1];
}
if (CosaFare == "PopolaProvince"){
PopolaComuni();
}
}
//questa funzione svuota la select "id_select" nella pagina html
function SvuotaSelect(id_select){
num_option=document.getElementById(id_select).options.length;
for(a=num_option;a>=0;a--){
document.getElementById(id_select).options[a]=null;
}
}
</script>
<p><div id="attesa"> </div></p>
<div class="form_item">
<div class="form_element cf_dropdown">
<label class="cf_label" style="width: 150px;">Regione</label>
<select onchange="PopolaProvince()" id="select_regioni" size="1" name="select_regioni">
<option value="00">Seleziona una regione...</option>
<?php
$database = &JFactory::getDBO();
$sql = "SELECT * FROM #__regioni";
$database->setQuery($sql);
$results = $database->loadAssocList();
/*quì sotto, la variabile $regioni vierne popolata con il nome
*delle regioni è il loro id, generando quindi un output sequenziale
*del tipo "<option value=19>Piemonte</option> [br /]........"
*/
for($i=0, $ct=count($results); $i < $ct; $i++) {
echo "<option value=".$results[$i]['id'].">".$results[$i]['name']."</option> [br /]";
}
?>
</select>
</div>
<div class="cfclear"> </div>
</div>
<div class="form_item">
<div class="form_element cf_dropdown">
<label class="cf_label" style="width: 150px;">Provincia</label>
<select class="cf_inputbox" id="select_province" size="1" title="" name="select_province" onchange="PopolaComuni()">
</select>
</div>
<div class="cfclear"> </div>
</div>
<div class="form_item">
<div class="form_element cf_dropdown">
<label class="cf_label" style="width: 150px;">Comune</label>
<select class="cf_inputbox" id="select_comuni" size="1" title="" name="select_comuni">
</select>
</div>
<div class="cfclear"> </div>
</div>
<div class="form_item">
<div class="form_element cf_textarea">
<label class="cf_label" style="width: 150px;">Messaggio</label>
<textarea class="cf_inputbox" rows="2" id="text_3" title="" cols="30" name="text_messaggio" ></textarea>
</div>
<div class="cfclear"> </div>
</div>
<div class="form_item">
<div class="form_element cf_button">
<input value="Invia Messaggio" name="button_4" type="submit" />
</div>
<div class="cfclear"> </div>
</div>
Grazie mille a tutti per l'aiuto!!!