Salve a tutti ho un problema con le select dinamiche, funzionano perfettamente in Firefox ma non in safari e i.e.7 per meglio dire le select funzionano ma non la relazione tra loro (classico esempio paesi -> regioni).
vi posto il codice:
.....
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>......
le funzioni richiamate sono così strutturate:
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;
}
Qualcuno sa aiutarmi a capire perchè non funziona in safari e in i.e.7 mentre nel mitico Firefox tutto è perfetto???
Grazie mille a tutti!!!