• User

    [Ajax-php-mysql] Autocompletamento a cascata

    Ciao a tutti, sto cercando di avvicinarmi ad ajax, ma purtroppo le mie conoscenze sono ancora lacunose... attualmente per un mio progetto personale sto cercando di creare un form che mi suggerisca il riempimento di un campo e in automatico mi compili i successivi... In pratica: ho un form con le seguenti voci: Nome, poi un campo "nome del padre", "nome del nonno da parte di padre","nome della nonna da parte di padre" la stessa cosa sarà per la madre... In pratica io in questo momento inserisco il nome del soggetto e poi con l'autocompleter di ajax mostro il nome dei vari padri inseriti nel db. Fin qui funziona tutto... il fatto è che io vorrei che selezionando il nome del padre dall'elenco, mi si riempissero in automatico i campi nonno e nonna... come faccio? Qualche idea? vi inserisco il codice che ho trovato per l'autocompletamento davvero semplice e funzionale...
    [html]
    <input name="pdr" id="slcPdr" type="text" value="<?php echo $_POST['pdr'] ?>" />
    <div id="suggPdr" class="autocomplete"></div>
    <script type="text/javascript">
    new Ajax.Autocompleter("slcPdr", "suggPdr", "autocompletamento.php", {minChars: 1});
    </script>
    [/html]le librerie utilizate sono:
    prototype
    scriptaculous

    i campi che vorrei si autocompletassero sono:
    [html]
    Da <input name="pdr_p" type="text" class="campo05" /><br />
    <input name="mdr_p" type="text" class="campo06"/>
    [/html]


  • Super User

    Ciao gigi-bg,
    Dovresti utilizzare
    afterUpdateElement : getSelectedId
    Per esempio:

    [HTML]
    <script type="text/javascript">
    new Ajax.Autocompleter("slcPdr", "suggPdr", "autocompletamento.php", {afterUpdateElement : miaFunzione, minChars: 1});

    function miaFunzione(text, li) {
    alert(li.id);
    }
    </script>
    [/HTML]


  • User

    Innanzi tutto grazie e scusa per il ritardo nella risposta... 🙂 per il resto mi sa che il mio livello è ancora elementare (a proposito avresti da consigliarmi un buon testo che illustri come integrare js e php?) potresti spiegarmi come funziona lo script che mi hai indicato, purtroppo non sono ancora riuscito a modificarlo per farlo funzionare ma con qualche ragguaglio potrei provarci... per interdeci il text che tu passi alla funzione a cosa si riferisce? Grazie per il disturbo, ciao


  • Super User

    Ho riutilizzato la funzione da te utilizzata: Ajax.Autocompleter;
    in più ho aggiunto il parametro afterUpdateElement documentato qui