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

    Jquery append html e autocomplete

    Buongiorno a tutti.
    Ho un grosso dilemma vorrei aggiungere tramite jquery del codice html tramite la funzione .append() e poi con .autocomplete() fare in modo che autocompleti un input text, metto il pseudocodice per rendere l'idea:
    codice:
    <?php $array = array('abate', 'alfa', 'abete'); ?>
    <script> 
        var num = 1; 
        function aggiungi_elemento() {
           $('#oggetti').append("<tr><td><input type='text' id='enter' name='tipooggetto"+num+"' size='40'/></td></tr>");
           $(document).ready(function() { 
                var parole = ['<?php echo implode("','", $array) ?>'];                       
                $("#enter").autocomplete({source: parole}) }); num++;
           }
    </script> 
    <table id='oggetti' width='800' border='0' align='center'> 
       <tbody> 
          <tr> 
              <td colspan=4>Inserimento descrizione oggetti</td> 
          </tr> 
          <tr class='tableheader'> 
             <td width='10'>Nr.</td> <td width='100'>Tipo Oggetto</td> 
             <td width='220'>Descrizione Oggetto</td> 
             <td width='40'> </td> 
          </tr> 
       </tbody> 
    </table> 
    
    
    
     
    Aggiungi un elemento
    Considerate che una porzione di codice quindi non è molto coerente, ma il senso è aggiungere html che inserisca alla pressione di un tasto "aggiungi" un input text e su questo input associare la funzione autocomplete.

    Ho provato anche a generare tutto il DOM in javascript, ma autocomplete non va.

    C'è qualcuno che mi darebbe una dritta?
    Angelo

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    <script> 
        var num = 1; 
        function aggiungi_elemento() {
           $('#oggetti').append("<tr><td><input type='text' id='enter' name='tipooggetto"+num+"' size='40'/></td></tr>"); 
                var parole = ['<?php echo implode("','", $array) ?>'];                       
                $("#enter").autocomplete({source: parole}); 
    num++;
           }
    </script>
    Prova cosi, ma fai attenzione che id enter sia univo nel documento
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Scusami, forse leggo male io dopo tante ore davanti ad un monitor, ma qual'è la differenza con il mio script?
    Angelo

  4. #4
    Alla fine non so perché ha funzionato così

    codice:
    <script>      
               var num = 1;      
               function aggiungi_elemento() {        
                    $('#oggetti').append("<input type='text' id='enter' name='tipooggetto"+num+"' size='40'/>");
                    var parole = ['<?php echo implode("','", $array) ?>'];
                    $("input#enter").autocomplete({source: parole});  
                    num++;
               }
    </script>
    Angelo

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ho tolto $(document).ready che dentro ad una funzione non ha senso
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    aggiungere input può avere logica solo se nel documento hai un altro id enter associato ad un altro tipo di elemento tipo
    <for id='enter'><input id='enter' type='text' /></for> ma come già detto gli id devono essere univoci
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    ok grazie, l'importante è che ho risolto.
    Angelo

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