Salve a tutti, ho un problema con delle select dinamiche, che funzionano perfettamente in Firefox ma non in Safari o i.e.7 credo che il problema possa essere nelle funzioni JavaScript (dato che le select funzionano ma non varia il contenuto in base alla selezione della select precedente).
posto il codice delle funzioni :
Codice PHP:
function controllo_p_r (param) {
var voce=document.dati_insert.paese_sel;
var voce_r=document.dati_insert.regione_sel;
var riferimento=param;
var k;
var l=voce_r.options.length;
for(var k=1; k<=l; k++){
var chi=voce_r.options[k].className;
if(chi != riferimento){
voce_r.item(k).style.display= "none";
}else{
voce_r.item(k).style.display= "block";
}
}
return false;
}
function controllo_r_c (param) {
var voce=document.dati_insert.regione_sel;
var voce_r=document.dati_insert.citta_sel;
var riferimento=param;
var k;
var l=voce_r.options.length;
for(var k=1; k<=l; k++){
var chi=voce_r.options[k].className;
if(chi != riferimento){
voce_r.item(k).style.display= "none";
}else{
voce_r.item(k).style.display= "block";
}
}
return false;
}
che sono richiamate da questo script :
Codice PHP:
<form action="action_add_documento.php" method="post" enctype="multipart/form-data" name="dati_insert">
<input type="hidden" name="fase" value="add"/>
<input type="hidden" name="action" value="add"/>
<table id="table_dati">
<tr><th></th><th>Dati</th></tr>
<tr><td id="hide"></td>
<td>
<select name="paese_sel" id="paese_sel" onChange="document.dati_insert.paese.value=this.value, controllo_p_r(this.value)">
<?
$paesi=mysql_query("SELECT * FROM paesi ORDER BY paese",$db);
echo "\t<option value=\"Paese\" class=\"paese\">Scegli</option>\n";
while ($row = mysql_fetch_array($paesi)){
$valore=$row['paese'];
echo "\t<option value=\"$valore\">$valore</option>\n";
}
?>
</select> Paese <font color="#660000">*</font>
<input type="text" name="paese" value="<? echo ($row["paese"]) ?>" /></td>
<td><select name="regione_sel" id="regione_sel" onChange="document.dati_insert.regione.value=this.value, controllo_r_c(this.value)">
<?
$regioni=mysql_query("SELECT * FROM regioni ORDER BY regione",$db);
echo "\t<option value=\"Regione\" class=\"regione\">Scegli</option>\n";
while ($row_r = mysql_fetch_array($regioni)){
$valore_r=$row_r['regione'];
$valore2=$row_r['paese'];
echo "\t<option value=\"$valore_r\" class=\"$valore2\" >$valore_r</option>\n";
}
?>
</select> Regione <font color="#660000">*</font>
<input type="text" name="regione" value="<? echo ($row["regione"]) ?>" /></td>
Vi ringrazio anticipatamente per l'aiuto.
peo 28