Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    714

    Creare all'infinito x righe con select box

    Salve a tutti,
    ho visto in rete tool come questi ma non sono riuscito a estrapolare il codice o fare qualche ricerca sull'argomento.

    Praticamente l'utente sul sito, schiacciando il pulsante (+) deve creare, in modo continuato per quante volte vuole, una serie di righe gemelle.

    La riga e' cosi composta

    COLONNA 1 : Select box (con 3 o + valori, generata dinamicamente a un ciclo in PHP)
    COLONNA 2: input di text
    COLONNA 3: Pulsante + che crea la copia della riga sotto

    E cosi via fino all'infinito (quante volte schiaccia piu) inoltre per le righe create si ha un meno, che permette di toglierle.

    Qualcuno di voi ha qualcosa di simile?

    Potrei farlo aggiornando la pagina, ma non vorrei usare quel modo.

    Grazie.
    Antonio

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Guarda nelle discussioni (in evidenza di questo forum) c'è quello che ti serve.
    Ciao
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    714
    mmmm, non l'ho trovato nella discussione.

    Se riuscissi a sapere, solo come si potrebbe prendere il contenuto di una select box, quindi tutte le opzioni e metterle in un array, potrei costruirmela da solo la funzione.

    Es, io ho una select

    <select name="ciao" id="1">
    <option value="1">Salve</option>
    <option value="2">Ciao</option>
    <option value="3">Arrivederci</option>
    <option value="4">Addio</option>
    </select>

    alla pressione di un tasto, mi mette tutto il contenuto in un array.

    Grazie

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Aggiungere input dinamicamente (nel tuo caso select oppure option)
    http://forum.html.it/forum/showthrea...hreadid=848168
    Aggiungere option da pop:
    http://forum.html.it/forum/showthrea...2#post11515822
    Come costruire un array:
    http://javascript.html.it/guide/lezione/897/gli-array/
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    714
    Ciao,
    posto il codice che ho creato che crea esattamente quello che volevo.

    Se pensate che si possa migliorare in qualche modo, ogni consiglio e' ben accetto.

    Questo e' il codice HTML

    Codice PHP:

        
    <style>
            .
    dv_select {
                
    floatleft;
                
    width100px;
                
    padding-top3px;
            }
            .
    bt_select {
                
    floatleft;
            }
        </
    style>
        
        <
    form name="myform" method="post" action="">
                <
    div>
                    <
    div class="dv_select">
                        <
    select name="query[1][value]" class="testo" id="select_1">
                            <
    option value="1">Ciao</option>
                            <
    option value="2">Salve</option>
                            <
    option value="3">Arivederci</option>
                        </
    select>
                    </
    div>
                    <
    div class="bt_select">
                        <
    button onClick="return Aggiungi(1)" id="bottone_1">+</button>
                    </
    div>
                    <
    div style="clear: left"></div>
                <
    div>
                <
    div id="cambia_1"></div>

            </
    table>
        </
    form
    Questo e' il codice JS (Da includere come esterno)

    Codice PHP:

    function Aggiungi(value) {
        
        var 
    select '';
        for (
    i=0i<document.getElementById('select_'+value).options.lengthi++) {
            
    select select '<option value="' document.getElementById('select_'+value).options[i].value '">'+document.getElementById('select_'+value).options[i].text+'</option>';
        }

        
    nuovo value+1;
        
    document.getElementById('cambia_'+value).innerHTML '<div><div class="dv_select"><select name="query['+nuovo+'][value]" id="select_'+nuovo+'" class="testo">'+select+'</select></div><div class="bt_select"><button id="meno_'+nuovo+'" onClick="return Sottrai('+nuovo+')">-</button><button id="bottone_'+nuovo+'" onClick="return Aggiungi('+nuovo+')">+</button></div><div style="clear: left"></div><div><div id="cambia_'+nuovo+'"></div>';
        
    document.getElementById('bottone_'+value).style.display 'none';

        return(
    false);
    }

    function 
    Sottrai(value) {
        
    document.getElementById('meno_'+value).style.display 'none';
        
    document.getElementById('select_'+value).style.display 'none';
        return(
    false);


    Un saluto.
    Antonio

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 © 2024 vBulletin Solutions, Inc. All rights reserved.