dunque, avevo bisogno di fare una semplice select dinamica cosi' googolando ho trovato un esempio semplice che usa javascript. ma nel mio codice c'e' qualche problema che non riesco a scovare.
posto l'originale funzionante ed il mio.
grazie per l'aiuto
codice:<script type="text/javascript"> var shipping = new Object() shipping["1"] = [{value:"1", text:"Carta di credito"}, {value:"2", text:"contrassegno"}, {value:"3", text:"Bollettino postale"}]; shipping["2"] = [{value:"1", text:"Carta di credito"}, {value:"4", text:"bonifico bancario"}]; shipping["3"] = [{value:"1", text:"Carta di credito"}, {value:"4", text:"bonifico bancario"}]; function setCost(chooser) { var newElem; var where = (navigator.appName == "Microsoft Internet Explorer") ? -1 : null; var costChooser = chooser.form.elements["id_pag"]; while (costChooser.options.length) { costChooser.remove(0); } var choice = chooser.options[chooser.selectedIndex].value; var db = shipping[choice]; newElem = document.createElement("option"); newElem.text = "tipo di pagamento:"; newElem.value = ""; costChooser.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; costChooser.add(newElem, where); } } } </script> <form action="" method="post" name="frmCart" id="frmCart"> <select name="id_area" onchange="setCost(this)"> <option value="" selected="selected">Seleziona un area</option> <option value="1">Italia</option> <option value="2">Europa e bacino del Mediterraneo</option> <option value="3">Paesi extra europei</option> </select> </td></tr> <tr><td colspan="8"> <select name="id_pag" onchange="this.form.submit();"> <option value="" selected="selected">Seleziona il tipo di pagamento</option> </select> </form>
codice:<script type="text/javascript"> var dati = new Objetc() dati["2010-06-26"] = [ {value:"0", text:"08:00:00"} ]; dati["2010-06-27"] = [ {value:"1", text:"08:20:00"}, {value:"2", text:"08:00:00"} ]; dati["2010-06-28"] = [ {value:"3", text:"08:20:00"} ]; dati["2010-08-28"] = [ {value:"4", text:"21:20:00"} ]; function setSlot(chooser) { var newElem; var where = (navigator.appName == "Microsoft Internet Explorer") ? -1 : null; var slotChooser = chooser.form.elements["slot"]; while (slotChooser.options.length) { slotChooser.remove(0); } var choice = chooser.options[chooser.selectedIndex].value; var db = dati[choice]; newElem = document.createElement("option"); newElem.text = "seleziona uno slot:"; newElem.value = ""; slotChooser.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; slotChooser.add(newElem, where); } } } </script> <table> <form action="" method="post" name="frmCart" id="frmCart"> Data: <select name="data" onchange="setSlot(this)"> <option value="" selected="selected">data</option> <option value="2010-06-26">2010-06-26</option> <option value="2010-06-27">2010-06-27</option> <option value="2010-06-27">2010-06-27</option> <option value="2010-06-28">2010-06-28</option> <option value="2010-08-28">2010-08-28</option> </select> </td></tr> <tr><td colspan="8"> Slot: <select name="slot" onchange="this.form.submit();"> <option value="" selected="selected">Seleziona uno slot</option> </select> </form> </table>

Rispondi quotando