Ciao a tutti,

sono un programmatore php ma di javascript non ne so una mazza!

Il problema è il seguente: vorrei riutilizzare lo script presente qui su html.it "Select dinamiche":

Codice PHP:
<script type="text/javascript">
/* 
     Script  tratto dal libro "JavaScript and DHTML Cookbook" - Capitolo 8-13
     Pubblicato da O'Reilly & Associates
     Copyright 2003 Danny Goodman
      Riprodurre questa nota per qualunque riutilizzo del codice.
    */
var regiondb = new Object()
regiondb["africa"] = [{value:"102"text:"Cairo"},
                      {
value:"88"text:"Lagos"},
                      {
value:"80"text:"Nairobi"},
                      {
value:"55"text:"Pretoria"}];
regiondb["asia"] = [{value:"30"text:"Ankara"},
                    {
value:"21"text:"Bangkok"},
                    {
value:"49"text:"Pechino"},
                    {
value:"76"text:"New Delhi"},
                    {
value:"14"text:"Tokyo"}];
regiondb["australia"] = [{value:"64"text:"Suva"},
                          {
value:"12"text:"Sydney"}];
regiondb["europa"] = [{value:"11"text:"Atene"},
                      {
value:"35"text:"Francoforte"},
                      {
value:"3"text:"Londra"},
                      {
value:"15"text:"Madrid"},
                      {
value:"1"text:"Parigi"},
                      {
value:"10"text:"Roma"},
                      {
value:"6"text:"Stoccolma"},
                      {
value:"97"text:"San Pietroburgo"}];
regiondb["noamer"] = [{value:"73"text:"Dallas"},
                      {
value:"71"text:"Los Angeles"},
                      {
value:"5"text:"New York"},
                      {
value:"37"text:"Toronto"}];
regiondb["suamer"] = [{value:"65"text:"Buenos Aires"},
                      {
value:"31"text:"Caracas"},
                      {
value:"66"text:"Rio di Janeiro"}];

function 
setCities(chooser) {
    var 
newElem;
    var 
where = (navigator.appName == "Microsoft Internet Explorer") ? -null;
    var 
cityChooser chooser.form.elements["città"];
    while (
cityChooser.options.length) {
        
cityChooser.remove(0);
    }
    var 
choice chooser.options[chooser.selectedIndex].value;
    var 
db regiondb[choice];
    
newElem document.createElement("option");
    
newElem.text "Seleziona una città:";
    
newElem.value "";
    
cityChooser.add(newElemwhere);
    if (
choice != "") {
        for (var 
0db.lengthi++) {
            
newElem document.createElement("option");
            
newElem.text db[i].text;
            
newElem.value db[i].value;
            
cityChooser.add(newElemwhere);
        }
    }
}

</script>

</head>
<body >



<div align="center">


<h1>Esempio - Select dinamiche</h1>
<hr> 

<form name="form">
Invia la richiesta a: 
<select name="continente" onchange="setCities(this)">
<option value="" selected="selected">Seleziona un continente:</option>
<option value="africa">Africa</option>
<option value="asia">Asia</option>
<option value="australia">Australia/Oceania</option>
<option value="europa">Europa</option>
<option value="noamer">Nord America</option>
<option value="suamer">Sud America</option>

</select> 
<select name="città">
<option value="" selected="selected">Seleziona una città:</option>
</select>
</form> 
ma vorrei modificarlo in quanto anche se non si sceglie il continente compaiono le città, così ho aggiunto delle "option" così:

Codice PHP:
<select name="città">
<
option value="" selected="selected">Seleziona una città:</option>
<
option value="Roma">Roma</option>
<
option value="Londra"> (eccetera........)
</
select
ed infatti se non si seleziona nessun continente le città compaiono. Il problema è che se si seleziona un continente e poi uno se ne pente togliendolo, le città che ho aggiunto non compaiono più!

Come devo modificare questo script per farlo funzionare in questo senso?
(Spero di essermi spiegato bene........)