Spero di spiegarmi bene...
Per non stare sempre a scrivere codice html inerente la costruzione di un form, ho pensato di avere una libreria di funzioni per ogni tipo di input.
Ho creato una funzione che costruisce un tag select e fin qui tutto a posto.
Il problema nasce quando voglio effettuare un controllo sullo stesso.
ho bisogno di selezionare una regione e farmi restituire su di un campo sottostante tutti i comuni di quella regione. dovendo inviare al server la prima richiesta e non volendo perdere la valorizzazione della select con la regione selezionata, ho pensato di comparare il dato inviato con il dato ricevuto e se sono uguali aggiungo l'attributo selected sulla option.
il codice è il seguente, in pratica non riesco a reperire il valore della select da comparare.
nel file dove costruisco il form ho scritto questo:
<?php
html_tag_selectED('Regione o stato estero','sel_regione','2',$lung_option,$option);
?>
la funzione è la seguente:
function html_tag_selectED($labelsel,$namesel,$sizesel,$nop tion,$valoption){
$sel=$labelsel."<select name=\"$namesel\" onchange=\"inviaCambiamenti();\">\n";
if (isset($noption) && $noption!=0){
$valuenamesel="$".$namesel;
?><script>alert('valore di namesel '+ "<?=$valuenamesel?>")</script><?
$sel=$sel."<option value=\"\"></option>\n";
foreach($valoption as $k => $v){
if(!empty($namesel)){
if($v!=$valuenamesel){
$sel=$sel."<option value=\"$v\">$v</option>\n";}
else{$sel=$sel."<option value=\"$v\" selected>".$v."</option>\n";}
}else{$sel=$sel."<option value=\"$v\">".$v."</option>\n";}
}
}
$sel=$sel."</select>\n";
echo $sel;
}
Ho scritto qualche castroneria???
![]()