A me servirebbe uno script diverso da quelli visti finora, ossia selezionando una provincia mi possa abbinare in automatico la regione di appartenenza con un secondo select.
esistono già script per questo scopo ?
![]()
A me servirebbe uno script diverso da quelli visti finora, ossia selezionando una provincia mi possa abbinare in automatico la regione di appartenenza con un secondo select.
esistono già script per questo scopo ?
![]()
Esempio:Nota che l'ordine delle province puo` essere a piacere, mentre quello delle regioni deve rispettare i numeri assegnati nei primi caratteri del value delle opzioni delle province.codice:<form> <select name="provincia" onchange="this.form.regione.selectedIndex= this.options[parseInt(this.selectedIndex.value.substr(0,2))].value;"> <option value="00-AO">Aosta</option> <option value="01-TO">Torino</option> <option value="01-AL">Alessandria</option> <option value="01-CN">Cuneo</option> ... <option value="02-MI">Milano</option> <option value="02-PV">Pavia</option> ... <option value="03-TN">Trento</option> <option value="03-BZ">Bolzano</option> <option value="04-VE">Venezia</option> ... </select> <select name="regione"> <option value="00">Valle d'Aosta</option> <option value="01">Piemonte</option> <option value="02">Lombardia</option> <option value="03">Trentino Alto Adige</option> <option value="04">Veneto</option> ... </select> </form>
(naturalmente ogni regione avra` un numero assegnato, da 0 a 19 - ho usato l'ordine geografico, ma puoi decidere quale ordine vuoi, purche` lo rispetti dappertutto).
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
ok ti ringrazio tantissimo mich
sei veramente di grandissimo aiuto
![]()
nella precedente io avevo in ordine alfabetico per provincia
<option value="AG">Agrigento</option>
<option value="AL">Alessandria </option>
<option value="AN">Ancona </option>
e cosi per regione :
<option value="0">Tutta Italia</option>
<option value="1">Abruzzo</option>
<option value="2">Basilicata</option>
<option value="3">Calabria</option>
Per il funzionamento dello scpript è meglio se cambio ordine delle province ? Ad esempio potrei mettere come 20 tutta italia e partire da 0 con abruzzo, per le province dovrei mettere prima le province dell'abruzzo e poi le altre quindi le province d'italia.
ok provo
alla fine posto il risultato
![]()
grazie ancora mich
L'ordine e` una scelta "editoriale" del tuo sito. Non e` una scelta "tecnica".
Quindi se avevi deciso che l'ordine alfabetico e` il migliore non devi cambiare.
Dal punto di vista tecnico, devi solo adattare il codice alla scelta.
Quindi se per te la regione "01" e` l'Abruzzo, tutte le province di tale regione avranno il prefisso "01", ecc. (io avevo usato un altro standard molto usato, ma perche` non conoscevo il tuo).
Se usi "00" per "tutta Italia", va benissimo (e` la scelta piu` razionale); rispetto a quanto ho scritto io, dovrai fare alcuni cambiamenti, ma sono una cosa banale.
Se poi hai problemi, posta sia il codice JS, che la struttura HTML dei due select.
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
ecco posto il codice provincia -> regione :
codice:<form> <select name="provincia" onchange="this.form.regione.selectedIndex= this.options[parseInt(this.selectedIndex.value.substr(0,2))].value;"> <option value="00-XX">Tutte le provincie</option> <option value="15-AG">Agrigento</option> <option value="12-AL">Alessandria </option> <option value="10-AN">Ancona </option> <option value="19-AO">Aosta </option> <option value="16-AR">Arezzo </option> <option value="10-AP">Ascoli Piceno </option> <option value="12-AT">Asti </option> <option value="04-AV">Avellino </option> <option value="13-BA">Bari </option> <option value="20-BL">Belluno </option> <option value="04-BN">Benevento </option> <option value="09-BG">Bergamo </option> <option value="12-BI">Biella </option> <option value="05-BO">Bologna </option> <option value="17-BZ">Bolzano </option> <option value="09-BS">Brescia </option> <option value="13-BR">Brindisi </option> <option value="14-CA">Cagliari </option> <option value="15-CL">Caltanissetta </option> <option value="11-CB">Campobasso </option> <option value="04-CE">Caserta </option> <option value="15-CT">Catania </option> <option value="03-CZ">Catanzaro </option> <option value="01-CH">Chieti </option> <option value="09-CO">Como </option> <option value="03-CS">Cosenza </option> <option value="09-CR">Cremona </option> <option value="03-KR">Crotone </option> <option value="12-CN">Cuneo </option> <option value="15-EN">Enna </option> <option value="05-FE">Ferrara </option> <option value="16-FI">Firenze </option> <option value="13-FG">Foggia </option> <option value="05-FO">Forlì </option> <option value="07-FR">Frosinone </option> <option value="08-GE">Genova </option> <option value="06-GO">Gorizia </option> <option value="16-GR">Grosseto </option> <option value="08-IM">Imperia </option> <option value="11-IS">Isernia </option> <option value="01-AQ">L'Aquila </option> <option value="08-SP">La Spezia </option> <option value="07-LT">Latina </option> <option value="13-LE">Lecce </option> <option value="09-LC">Lecco </option> <option value="16-LI">Livorno </option> <option value="09-LO">Lodi </option> <option value="16-LU">Lucca </option> <option value="10-MC">Macerata </option> <option value="09-MN">Mantova </option> <option value="16-MS">Massa-Carrara </option> <option value="02-MT">Matera </option> <option value="15-ME">Messina </option> <option value="09-MI">Milano </option> <option value="05-MO">Modena </option> <option value="04-NA">Napoli </option> <option value="12-NO">Novara </option> <option value="14-NU">Nuoro </option> <option value="14-OR">Oristano </option> <option value="20-PD">Padova </option> <option value="15-PA">Palermo </option> <option value="05-PR">Parma </option> <option value="09-PV">Pavia </option> <option value="18-PG">Perugia </option> <option value="10-PS">Pesaro e Urbino </option> <option value="01-PE">Pescara </option> <option value="05-PC">Piacenza </option> <option value="16-PI">Pisa </option> <option value="16-PT">Pistoia </option> <option value="06-PN">Pordenone </option> <option value="02-PZ">Potenza </option> <option value="16-PO">Prato </option> <option value="15-RG">Ragusa </option> <option value="05-RA">Ravenna </option> <option value="03-RC">Reggio Calabria </option> <option value="05-RE">Reggio Emilia </option> <option value="07-RI">Rieti </option> <option value="05-RN">Rimini </option> <option value="07-RM">Roma </option> <option value="20-RO">Rovigo </option> <option value="04-SA">Salerno </option> <option value="14-SS">Sassari </option> <option value="08-SV">Savona </option> <option value="16-SI">Siena </option> <option value="15-SR">Siracusa </option> <option value="09-SO">Sondrio </option> <option value="13-TA">Taranto </option> <option value="01-TE">Teramo </option> <option value="18-TR">Terni </option> <option value="12-TO">Torino </option> <option value="15-TP">Trapani </option> <option value="17-TN">Trento </option> <option value="20-TV">Treviso </option> <option value="06-TS">Trieste </option> <option value="06-UD">Udine </option> <option value="09-VA">Varese </option> <option value="20-VE">Venezia </option> <option value="12-VB">Verbania </option> <option value="12-VC">Vercelli </option> <option value="20-VR">Verona </option> <option value="03-VV">Vibo Valentia </option> <option value="20-VI">Vicenza </option> <option value="07-VT">Viterbo </option> </select> <select name="regione"> <option value="00">Tutta Italia</option> <option value="15">Sicilia</option> <option value="12">Piemonte</option> <option value="10">Marche</option> <option value="19">Valle Aosta</option> <option value="16">Toscana</option> <option value="04">Campania</option> <option value="13">Puglia</option> <option value="20">Veneto</option> <option value="09">Lombardia</option> <option value="05">Emilia Romagna</option> <option value="17">Trentino Alto Adige</option> <option value="14">Sardegna</option> <option value="11">Molise</option> <option value="03">Calabria</option> <option value="01">Abruzzo</option> <option value="02">Basilicata</option> <option value="06">Friuli Venezia Giulia</option> <option value="07">Lazio</option> <option value="08">Liguria</option> <option value="18">Umbria</option> </select> </form>
putroppo ancora nn funziona
![]()
Mi sa che ho fatto un po' di confusione io, nell'elaborare lo script.
Prova con questa:
onchange="this.form.regione.selectedIndex=
parseInt(this.options[this.selectedIndex].value.substr(0,2));"
oppure:
onchange="this.form.regione.selectedIndex=
parseInt(this.options[this.selectedIndex].value);"
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
Con la seconda che mi hai postato funziona.
Soltanto che devo inserire lo script in un form di iscrizione per cui va in conflitto con l'altro tag form. Si potrebbe eliminare il tag form del nostro select e mettere solo quello principale ?
In pratica :
codice:<form action="..." method="post" name="modifica"> .. .. <select name="provincia" onchange="this.form.modifica.selectedIndex=parseInt(this.options[this.selectedIndex].value);"> ... .. </form>
però nn funzia
oppure come si potrebbe fare ?
ecco ho risolto in un altro modo per il problema precedente.
Posto il codice completo, soltanto che nn funziona solo per le province della regione Lombardia, le associa a tutta Italia.
Questo è solo un esempio, naturalmente nn sono responsabile per gli abbinamenti sbagliati prov->regione
![]()
codice:<form> <select name="modprovincia" onchange="this.form.modregione.selectedIndex=parseInt(this.options[this.selectedIndex].value);"> <option value="00-XX">Tutte le provincie</option> <option value="15-AG">Agrigento</option> <option value="12-AL">Alessandria </option> <option value="10-AN">Ancona </option> <option value="19-AO">Aosta </option> <option value="16-AR">Arezzo </option> <option value="10-AP">Ascoli Piceno </option> <option value="12-AT">Asti </option> <option value="04-AV">Avellino </option> <option value="13-BA">Bari </option> <option value="20-BL">Belluno </option> <option value="04-BN">Benevento </option> <option value="09-BG">Bergamo </option> <option value="12-BI">Biella </option> <option value="05-BO">Bologna </option> <option value="17-BZ">Bolzano </option> <option value="09-BS">Brescia </option> <option value="13-BR">Brindisi </option> <option value="14-CA">Cagliari </option> <option value="15-CL">Caltanissetta </option> <option value="11-CB">Campobasso </option> <option value="04-CE">Caserta </option> <option value="15-CT">Catania </option> <option value="03-CZ">Catanzaro </option> <option value="01-CH">Chieti </option> <option value="09-CO">Como </option> <option value="03-CS">Cosenza </option> <option value="09-CR">Cremona </option> <option value="03-KR">Crotone </option> <option value="12-CN">Cuneo </option> <option value="15-EN">Enna </option> <option value="05-FE">Ferrara </option> <option value="16-FI">Firenze </option> <option value="13-FG">Foggia </option> <option value="05-FO">Forlì </option> <option value="07-FR">Frosinone </option> <option value="08-GE">Genova </option> <option value="06-GO">Gorizia </option> <option value="16-GR">Grosseto </option> <option value="08-IM">Imperia </option> <option value="11-IS">Isernia </option> <option value="01-AQ">L'Aquila </option> <option value="08-SP">La Spezia </option> <option value="07-LT">Latina </option> <option value="13-LE">Lecce </option> <option value="09-LC">Lecco </option> <option value="16-LI">Livorno </option> <option value="09-LO">Lodi </option> <option value="16-LU">Lucca </option> <option value="10-MC">Macerata </option> <option value="09-MN">Mantova </option> <option value="16-MS">Massa-Carrara </option> <option value="02-MT">Matera </option> <option value="15-ME">Messina </option> <option value="09-MI">Milano </option> <option value="05-MO">Modena </option> <option value="04-NA">Napoli </option> <option value="12-NO">Novara </option> <option value="14-NU">Nuoro </option> <option value="14-OR">Oristano </option> <option value="20-PD">Padova </option> <option value="15-PA">Palermo </option> <option value="05-PR">Parma </option> <option value="09-PV">Pavia </option> <option value="18-PG">Perugia </option> <option value="10-PS">Pesaro e Urbino </option> <option value="01-PE">Pescara </option> <option value="05-PC">Piacenza </option> <option value="16-PI">Pisa </option> <option value="16-PT">Pistoia </option> <option value="06-PN">Pordenone </option> <option value="02-PZ">Potenza </option> <option value="16-PO">Prato </option> <option value="15-RG">Ragusa </option> <option value="05-RA">Ravenna </option> <option value="03-RC">Reggio Calabria </option> <option value="05-RE">Reggio Emilia </option> <option value="07-RI">Rieti </option> <option value="05-RN">Rimini </option> <option value="07-RM">Roma </option> <option value="20-RO">Rovigo </option> <option value="04-SA">Salerno </option> <option value="14-SS">Sassari </option> <option value="08-SV">Savona </option> <option value="16-SI">Siena </option> <option value="15-SR">Siracusa </option> <option value="09-SO">Sondrio </option> <option value="13-TA">Taranto </option> <option value="01-TE">Teramo </option> <option value="18-TR">Terni </option> <option value="12-TO">Torino </option> <option value="15-TP">Trapani </option> <option value="17-TN">Trento </option> <option value="20-TV">Treviso </option> <option value="06-TS">Trieste </option> <option value="06-UD">Udine </option> <option value="09-VA">Varese </option> <option value="20-VE">Venezia </option> <option value="12-VB">Verbania </option> <option value="12-VC">Vercelli </option> <option value="20-VR">Verona </option> <option value="03-VV">Vibo Valentia </option> <option value="20-VI">Vicenza </option> <option value="07-VT">Viterbo </option> </select> <select name="modregione"> <option value="00">Tutta Italia</option> <option value="01">Abruzzo</option> <option value="02">Basilicata</option> <option value="03">Calabria</option> <option value="04">Campania</option> <option value="05">Emilia Romagna</option> <option value="06">Friuli Venezia Giulia</option> <option value="07">Lazio</option> <option value="08">Liguria</option> <option value="09">Lombardia</option> <option value="10">Marche</option> <option value="11">Molise</option> <option value="12">Piemonte</option> <option value="13">Puglia</option> <option value="14">Sardegna</option> <option value="15">Sicilia</option> <option value="16">Toscana</option> <option value="18">Umbria</option> <option value="17">Trentino Alto Adige</option> <option value="19">Valle Aosta</option> <option value="20">Veneto</option> </select> </form>
Forse anche a quelle della Liguria ...
Il problema e` che parseInt() se trova uno zero iniziale, prende il dato come ottale.
Occorre aggiungere la base, quindi:
"this.form.modregione.selectedIndex=parseInt(this. options[this.selectedIndex].value,10);"
Per quanto riguarda il form, ti basta che i due campi facciano parte dello stesso form, e che non ci siano nomi duplicati.
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati