Ciao a tutti,
ho un problema sul passaggio di un valore pescato da una select..
gestisco le select in questo modo:
codice:var regiondb = new Object() regiondb["Agrigento"] = [{value:"1", text:"Agrigento"}, {value:"2", text:"Alessandria della Rocca"}, {value:"3", text:"Aragona"}]; regiondb["Alessandria"] = [{value:"44", text:"Acqui Terme"}, {value:"45", text:"Albera Ligure"}, {value:"46", text:"Alessandria"}]; regiondb["Ancona"] = [{value:"234", text:"Agugliano"}, {value:"235", text:"Ancona"}, {value:"236", text:"Arcevia"}]; function setCities(chooser) { var newElem; var where = (navigator.appName == "Microsoft Internet Explorer") ? -1 : null; var cityChooser = chooser.form.elements["city"]; while (cityChooser.options.length) { cityChooser.remove(0); } var choice = chooser.options[chooser.selectedIndex].value; var db = regiondb[choice]; newElem = document.createElement("option"); newElem.text = "- - - -"; newElem.value = ""; cityChooser.add(newElem, where); if (choice != "") { for (var i = 0; i < db.length; i++) { newElem = document.createElement("option"); newElem.text = db[i].text; newElem.value = db[i].value; cityChooser.add(newElem, where); } } }
Questo è l'html:
codice:<form method="post" name="orderForm" action="mail.php"> <div> <label>Provincia</label> <select id="prov" name="prov" class="fieldsel" onchange="setCities(this)"> <option value="" selected="selected">Scegli</option> <option value="Agrigento">Agrigento</option> <option value="Alessandria">Alessandria</option> <option value="Ancona">Ancona</option> </select> </div> <div> <label>Città</label> <select id="city" name="city" class="fieldsel"> <option value="" selected="selected">Scegli</option> </select> </div> </form>
in mail.php che processa il messaggio recupero il valore della città con
$city = $_POST['city'];
il problema è che mi stampa il value della città scelta (es: value:"44" per Acqui Terme)..e non il text Acqui Terme.
Come posso fare per evitare di sostituire tutti i numeri dei value con i rispettivi nomi delle città?
Grazie

Rispondi quotando