Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Popolare diverse select da un unico modello

    Salve, sono alle prime armi con javascript.
    Seguo il vostro sito da diverso tempo e mi ha sempre aiutato specie per il linguaggio html e VB.
    Purtroppo adesso non trovo soluzione ad un problema e ho deciso di scrivervi.

    Voglio creare un modello di una select per poi riusarla pi� volte all'interno di una pagina senza dovere copiare ed incollare la stessa select. Sopratutto perch� se ho intenzione di cambiare testi e valori della select sarebbe problematico e lungo apportare ogni modifica a tutte le select singole.

    Ho pensato a due strade:

    1 - mettere la select fuori dal form, ma non ho idea n� come n� dove metterla n� se � la strada giusta.. cos� poi da richiamarla ogni volta che mi serve nel form con un semplice:

    <select name="MiaSelect"></select>



    2 - creare una funzione javascript che crei un "modello" grazie ad un array bidimensionale.
    (bidimensionale per definire sia i text che i value di ogni singola voce)

    e poi nel form popolare la select ogni qualvolta si carica la pagina o al limite con un bottone:

    <input type="button" value="crea select" onclick="popolaSelect(this.form)">


    Ho iniziato cos�, so che � confuso... ma rispecchia proprio quanto sono confuso io:
    --------------------------------------------------------------------------------------------------------
    <script type="text/javascript">
    //Dichiaro l'array
    var arr = new Array();
    //Definisco le voci della matrice in modo che poi nella select 7 sia il value di Cane, e 84 il value di Abete
    arr[0][0] = 'Cane';
    arr[0][1] = 7;
    arr[1][0] = 'Abete';
    arr[1][1] = 84;


    function popola_select(){

    //qui dovrei impostare un ciclo for per la popolazione della select, ma non ho idea n� da dove partire, n� che istruzioni usare per l'effettiva popolazione di ogni singola voce della select



    }

    </script

    <form>

    <input type="button" value="crea select" onclick="popolaSelect(this.form)">
    <select name="miaselect" ></select>

    </form>
    --------------------------------------------------------------------------------

    Potresti aiutarmi? Grazie in anticipo.

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Un approccio.

    codice HTML:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Untitled</title>
    <script type="text/javascript">
     //Dichiaro l'array 
     var arr = new Array();
     arr[0] = new Array(7,'Cane');
     arr[1] = new Array(84,'Abete');
     
     //Dichiaro l'array 
     var arr2 = new Array();
     arr2[0]  = new Array(1,'Uno');
     arr2[1]  = new Array(2,'Due'); 
     arr2[2]  = new Array(3,'Tre'); 
     arr2[3]  = new Array(4,'Quattro'); 
     arr2[4]  = new Array(5,'Cinque'); 
    
    
     function popola_select(idDiv, idSelect, anArray){
       var html = '<select name="'+idSelect+'" id="'+idSelect+'" >';
      for (i=0;i<anArray.length;i++) {
        option = '<option value="'+anArray[i][0]+'">'+anArray[i][1]+'</option>';
       html   = html+option
      }
      html = html+'</select>';
      document.getElementById(idDiv).innerHTML = html;
     }
     </script
    </head>
    <body>
    
     <form>
     <div id="pippo"></div><br/>
     
     <div id="pluto"></div><br/>
     
     <input type="button" value="crea select 1" onclick="popola_select('pippo','sel01',arr)">
     <input type="button" value="crea select 2" onclick="popola_select('pluto','sel02',arr2)">
     </form>
    </body>
    </html>
    
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Grazie un sacco, della soluzione al problema e anche per la scoperta del:

    var html ='<select name="'+idSelect+'" id="'+idSelect+'" >';
    non sapevo si potesse far scrivere in html ad una funzione javascript. Mi hai aperto un mondo davvero. Grazie mille.
    Corro a studiarmi ci� che hai scritto e a far qualche modifica per applicare il tutto alla mia pagina!

  4. #4
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    ciao delvento,
    benvenuto sul forum.
    ti invito a leggere il regolamento in particolare la sezione che riguarda l'utilizzo del tag code.
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.