Jump to content

modulo ps_searchbar non funziona


DanielSka

Recommended Posts

Buongiorno,

ho un problema con il modulo ps_searchbar in prestashop 1.7.0.4, quando digito ad esempio il nome di un prodotto presente nel catalogo nel form di ricerca, il modulo non mi restituisce il risultato nella combo con il  link al prodotto, ma bensì una lista di N° link con URL Undefined con value solamente il carattere ">" come potete vedere da screen.

 

lo script che dovrebbe ricavare la lista di risutate è questo (ps_searchbar.js) :

/* global $ */
$(document).ready(function () {
    var $searchWidget = $('#search_widget');
    var $searchBox    = $searchWidget.find('input[type=text]');
    var searchURL     = $searchWidget.attr('data-search-controller-url');
    $.widget('prestashop.psBlockSearchAutocomplete', $.ui.autocomplete, .
    {
        _renderItem: function (ul, product)
        {
            return $("<li>")
                .append($("<a>")
                    .append($("<span>").html(product.category_name).addClass("category"))
                    .append($("<span>").html(' > ').addClass("separator"))
                    .append($("<span>").html(product.name).addClass("product"))
                ).appendTo(ul)
            ;
        }
    });

    $searchBox.psBlockSearchAutocomplete({
        source: function (query, response) {
            $.post(searchURL, {
                s: query.term,
                resultsPerPage: 10
            }, null, 'json')
            .then(function (resp) {
                response(resp.products);
            })
            .fail(response);
        },
        select: function (event, ui) {
            var url = ui.item.url;
            window.location.href = url;
        },
    });
});

avete qualche idea su come potrei risolvere il problema?

ho provato con la costruzione di un nuovo indice di ricerca ma il problema persiste,

sembra che non riesca a ricavarsi le proprietà di "product" in questo codice:

    _renderItem: function (ul, product)
        {
            return $("<li>")
                .append($("<a>")
                    .append($("<span>").html(product.category_name).addClass("category"))
                    .append($("<span>").html(' > ').addClass("separator"))
                    .append($("<span>").html(product.name).addClass("product"))
                ).appendTo(ul)
            ;
        }

 

Immagine.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...