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

    Autocomplete per ogni parola

    ciao!

    avrei bisogno di fare una cosa, ma non riesco a capire se è possibile farlo.
    in pratica, in una casella di testo, ho attivato l'autocomplete di jquery ui.
    codice:
        $(document).ready(function () {
            $("#cerca_colore").autocomplete({
                minLength: 2,
                source: "colori.php?term=" + $("#cerca_colore").val(),
            }).autocomplete("instance")._renderItem = function (ul, item) {
                console.log()
                return $("<li>")
                        .append(item.codice + " - " + item.descrizione_ita + " - " + item.descrizione_eng)
                        .appendTo(ul);
            };
        });
    funziona bene.
    solo che nella casella di ricerca l'utente deve scrivere eventuali parole separate da virgola, perchè poi così verranno salvate nel db.
    ad esempio:
    codice:
    black, green, giallo
    io dovrei attivare l'autocomplete per ogni parola separatamente.
    quindi mentre scrivo black deve cercare per black.
    poi quando cerco per green (dopo la virgola) deve cercare per green.
    e cosi via.

    sarebbe possibile fare questo??

  2. #2
    non so se è l'approccio più giusto, ma così funziona quasi tutto:
    codice:
    <script>
        $(document).ready(function () {
            var txtInput = $("#cerca_colore");
            txtInput.autocomplete({
                minLength: 2,
                source: function (req, res) {
                    var splitSearch = $("#cerca_colore").val().split(",");
                    var search = '';
                    switch (splitSearch.length) {
                        case 1:
                            search = splitSearch[0];
                            break;
                        case 2:
                            search = splitSearch[1];
                            break;
                        case 3:
                            search = splitSearch[2];
                            break;
                        default :
                            break;
                    }
                    $.ajax({
                        type: "post",
                        dataType: "json",
                        url: "../ajax/cerca_colore.php",
                        data: "term=" + search,
                        success: function (data) {
                            res($.map(data, function (item) {
                                return {
                                    label: item.codice + " - " + item.ricerca
                                }
                            }));
                        }
                    });
                }
            });
        });
    </script>
    uso source come funzione.
    e la ricerca da fare la splitto a livello di virgola, e nello switch mi prendo solo l'ultima parte.
    ho solo il problema che se viene selezionata una cosa, viene sostituito tutto il valore della casella di testo.
    ma è un altro problema.

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.